15

Visual Studio 如何在 C++ 中显示向量的元素或字符串的字符?有没有办法让它以自定义方式显示我自己的课程?

4

3 回答 3

16

http://msdn.microsoft.com/en-us/library/zf0e8s14(v=VS.100).aspx

对于本机代码,您可以将自定义数据类型扩展添加到文件 autoexp.dat,该文件位于 Program Files\Microsoft Visual Studio 10.0\Common7\Packages\Debugger 目录中。有关如何编写 autoexp 规则的说明位于文件本身中。

对于这个类:

template<class T>
struct  auto_array {
     T* data;
     int Len;
};

autoexp.data 可能如下所示:

auto_array<*> {
    children
    (
        #array
        (
            expr :      $e.Data[$i],
            size :      $e.Len
        )
    )
    preview
    (
        #(
            "[", $e.Len , "](",
            #array
            (
                expr :  $e.Data[$i],
                size :  $e.Len
            ),
            ")"
        )
    )
}

KindDragon报告 Visual Studio 2012 使用了一种新的文件格式:natvis

于 2011-09-14T18:08:35.100 回答
5

您可以将自定义 C++ 类型的可视化工具添加到 autoexp.dat 文件。文件中使用的格式和位置因 Visual Studio 的版本而异,但如果您使用 Google 搜索 autoexp.dat,您应该会找到一些有关如何自定义它的示例。

于 2011-09-14T18:06:30.193 回答
2

对于 VS2017/2015,使用Natvis 可视化在 Visual Studio 调试器中创建本机对象的自定义视图。

于 2018-09-26T06:39:39.650 回答