VSCode natvis 处理某些变量但不处理相同模板类型的其他变量
VSCode natvis working on some variables but not others of the same template type
在 Android 的 NDK 上使用上述 std::vectors。如果我如下定义 std::__ndk1::vector_base 的 natvis
<Type Name="std::__ndk1::__vector_base<*>">
<DisplayString>{{size={__end_ - __begin_}}}</DisplayString>
<Expand>
<Item Name="[size]" ExcludeView="simple">__end_ - __begin_</Item>
<Item Name="[capacity]" ExcludeView="simple">__end_cap_.__value_ - __begin_</Item>
<ArrayItems>
<Size>__end_ - __begin_</Size>
<ValuePointer>__begin_</ValuePointer>
</ArrayItems>
</Expand>
</Type>
我得到以下信息
为什么 natvis 定义适用于 unsigned char
但不适用于 unsigned long
?
看起来它可能是 VSCode 中的错误,因为 2020 年 8 月报告了一个错误(现已关闭),这似乎暗示在模板中使用 unsigned long
时存在问题。
在 Android 的 NDK 上使用上述 std::vectors。如果我如下定义 std::__ndk1::vector_base 的 natvis
<Type Name="std::__ndk1::__vector_base<*>">
<DisplayString>{{size={__end_ - __begin_}}}</DisplayString>
<Expand>
<Item Name="[size]" ExcludeView="simple">__end_ - __begin_</Item>
<Item Name="[capacity]" ExcludeView="simple">__end_cap_.__value_ - __begin_</Item>
<ArrayItems>
<Size>__end_ - __begin_</Size>
<ValuePointer>__begin_</ValuePointer>
</ArrayItems>
</Expand>
</Type>
我得到以下信息
为什么 natvis 定义适用于 unsigned char
但不适用于 unsigned long
?
看起来它可能是 VSCode 中的错误,因为 2020 年 8 月报告了一个错误(现已关闭),这似乎暗示在模板中使用 unsigned long
时存在问题。