将natvis文件中char *的显示限制为特定长度

时间:2016-04-27 07:42:41

标签: c++ c visual-studio visual-studio-2015 natvis

我有一个自定义数据结构,其中包含两个相关长度的char*缓冲区:最大长度和实际长度:

struct MyData {
  char* data;
  int length;
  int capacity;
};

在Visual Studio(2015)调试器可视化工具中,我只想显示length缓冲区的第一个data元素,而不是(通常未初始化的)剩余元素。

我在自定义.natvis文件中使用以下规则来显示自定义数据结构:

<Type Name="MyData">
  <DisplayString>content="{data,su}" length={length}</DisplayString>
</Type>

是否可以仅显示data作为&{34; su&#34; - data[0]data[length-1]的编码字符串?

1 个答案:

答案 0 :(得分:12)

这将限制调试器中字符串的长度:

<Type Name="MyData">
    <DisplayString>{data,[length]su}</DisplayString>
</Type>