如何解决VSCode natvis 处理某些变量,但不处理其他相同模板类型的变量
在 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
时存在问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。