Visual studio 在VisualStudio中,有没有一种方法可以查看共享ptr的使用情况?
有东西抓住了一个共享的ptr。我想知道是否有一种方法可以在所述共享ptr的使用上设置一个数据监视断点,以便查看使用的增量和减量。我工作的代码库非常大,因为我们使用QT信号和插槽,所以我不能100%确定如何跟踪共享所有权 我试过在谷歌上搜索这个问题,但还没有发现有人这么做。我的谷歌fu不是很强大,所以我可能会错过它。我还试着输入数据监视断点的变量名,如下所示 ptr->\u代表->\u使用Visual studio 在VisualStudio中,有没有一种方法可以查看共享ptr的使用情况?,visual-studio,c++11,shared-ptr,smart-pointers,Visual Studio,C++11,Shared Ptr,Smart Pointers,有东西抓住了一个共享的ptr。我想知道是否有一种方法可以在所述共享ptr的使用上设置一个数据监视断点,以便查看使用的增量和减量。我工作的代码库非常大,因为我们使用QT信号和插槽,所以我不能100%确定如何跟踪共享所有权 我试过在谷歌上搜索这个问题,但还没有发现有人这么做。我的谷歌fu不是很强大,所以我可能会错过它。我还试着输入数据监视断点的变量名,如下所示 ptr->\u代表->\u使用 无济于事。我只是得到一个永远不会中断的空数据监视断点。我正在使用Visual Studio 2019。我找到
无济于事。我只是得到一个永远不会中断的空数据监视断点。我正在使用Visual Studio 2019。我找到了一个办法 步骤1:在“std::shared_ptr”初始化后添加正常断点 步骤2:右键单击红点图标,选择“条件” 步骤3:输入共享指针的名称,名称前加“*” 步骤4:选择“已更改”选项 即使我这样做,它也能正常工作:
std::shared_ptr<int> p(new int(0));
int* raw_ptr = &*p;
while (true) //Break point here, when "*p" "Has Changed"
{
(*raw_ptr)++;
}
std::shared_ptr p(新int(0));
int*raw_ptr=&*p;
while(true)//此处的断点,当“*p”已更改时
{
(*原始ptr)++;
}
希望有帮助。我正在使用Visual Studio 2019。我找到了一个办法 步骤1:在“std::shared_ptr”初始化后添加正常断点 步骤2:右键单击红点图标,选择“条件” 步骤3:输入共享指针的名称,名称前加“*” 步骤4:选择“已更改”选项 即使我这样做,它也能正常工作:
std::shared_ptr<int> p(new int(0));
int* raw_ptr = &*p;
while (true) //Break point here, when "*p" "Has Changed"
{
(*raw_ptr)++;
}
std::shared_ptr p(新int(0));
int*raw_ptr=&*p;
while(true)//此处的断点,当“*p”已更改时
{
(*原始ptr)++;
}
希望能有所帮助。我想我已经解决了问题,很抱歉遗漏了相关信息。它是一个std::shared\u ptr,因此断点中的*p指针不起作用。该类型被用户隐藏,所以我在写第一篇文章时错过了它。我想我已经解决了问题,我很抱歉遗漏了相关信息。它是一个std::shared\u ptr,因此断点中的*p指针不起作用。该类型被用户隐藏,所以我在写第一篇文章时错过了它。