我试图通过在VS2015中创建一个.natvis文件来编写一个custom visualizer来指示C ++类的指针,比如Element。
class Element
{
int id;
......
};
int main()
{
Element* pElem = GetElement(); // Visualise this pointer!
}
当我将鼠标悬停在指针变量上时,我希望调试器向我显示该元素的成员id
的值。我怎样才能做到这一点?到目前为止,我已经尝试了以下内容,但它似乎没有起作用。
<?xml version="1.0" encoding="utf-8"?>
<AutoVisualizer xmlns="http://schemas.microsoft.com/vstudio/debugger/natvis/2010">
<!-- VC 2015 -->
<Type Name="Element*">
<DisplayString>{ id={*this.id} }</DisplayString>
</Type>
</AutoVisualizer>
答案 0 :(得分:0)
您不需要添加*
。而且,访问当前上下文的成员时不需要*this.
(另请参阅有关运算符优先级的注释)。
<Type Name="Element">
<DisplayString>{ id={id} }</DisplayString>
</Type>