我正在使用 Microsoft Visual Studio 2015 中的 .natvis 文件编写调试器可视化工具。如果可能的话,我想在我的课堂上获得一条信息。我想知道获取该变量的语法是什么。
这是 C++ 代码的简化版本:
class MyClass
{
public:
MyClass() {}
int getAValue(size_t index)
{
static std::vector<int> numberVector;
if (numberVector.size() <= index)
{
addSomeNumbersToTheEnd(numberVector);
}
return numberVector[i];
}
}
在调试器中,当我将鼠标悬停在 MyClass 的实例上时,我想查看向量的大小,但我不知道如何引用它(或者是否可能)。这是可视化器类型,<what goes here?>
在我遇到问题的地方:
<Type Name="MyClass">
<DisplayString>[$(Type)] staticVectorSize={<what goes here?>}</DisplayString>
</Type>
实际问题要复杂得多,涉及到奇怪地重复出现的模板模式来创建更好的枚举对象,所以请不要评论这个有点做作的场景的无用性。