Autoexp.dat和静态数组

时间:2014-05-02 02:26:46

标签: c++ visual-studio-2010 visual-studio debuggervisualizer

我目前正在使用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。

提前谢谢

0 个答案:

没有答案