在结构向量的监视窗口中显示特定变量

时间:2012-07-04 21:05:06

标签: c++ visual-studio debugging

假设我的std::vector<Foo>大小为30Foo结构定义为:

struct Foo {
    int a,b,c,d,e,f,g,h,i,j,k,l,m; //many fields
    // ...
};

是否可以仅“监视”字段g的内容以用于向量的所有元素?

我认为观察窗口的表达式如下:

(v)._Myfirst[$index].g
//v would be the variable holding the vector being debugged

就足够了。

1 个答案:

答案 0 :(得分:1)

如果您将Foo的可视化工具信息添加到%VSINSTALLDIR%\ Common7 \ Packages \ Debugger \ autoexp.dat,则只需观看v即可获得所需的效果。

例如,假设您v填充了3 Foog值为111,222和333.如果将以下内容添加到autoexp.dat的末尾:

Foo {
    preview (
        $c.g
    )
}

Watch Window看起来像:

VS10 Watch Window


或者你可以添加:

Foo {
    preview (
        #("g = ", $c.g)
    )
}

得到以下特性:

VS10 Watch Window