我目前正在使用autoexp.dat和natvis为Visual Studio 2010和Visual Studio 2012中的类创建调试可视化工具。使用natvis一切正常,但我有一个autoexp.dat问题。
当我创建我的类的静态数组时,调试器将我的数组显示为我的类的1个实例,而不是像我的类的数组。只有在我编写子节时才会出现这种情况。
我的autoexp.dat:
TestA{
preview( #("a=", $e.m_a, " b=",$e.m_b) )
children(#(#(a : $e.m_a),#(b : $e.m_b)))
}
我的快速程序显示问题:
class TestA
{
public:
TestA():m_a(0),m_b(0){}
TestA(int a, int b):m_a(a),m_b(b){}
private :
int m_a;
int m_b;
};
int main()
{
TestA test[10];
for (int i = 0; i < 10; ++i)
{
test[i] = TestA(i,i);
}
return 0;
}
以下是我在调试器中看到的带有子部分的内容(抱歉,我无法发布图像)。
使用:http://i.stack.imgur.com/LIhEv.jpg 没有:http://i.stack.imgur.com/QpsNu.jpg
我想看到我的所有数组都没有子节,但有一个/ b而不是m_a / m_b。
提前谢谢