是否有任何 C++this
关键字的类似物,可以在调试 C 代码时在 natvis 表达式中使用?
我想做以下事情,不介意没有this
.
考虑我们在 C 中有一些结构:
typedef struct
{
int state;
//other fields follow
}TCB;
还有全局变量:
TCB* Running;
我想制定 natvis 规则,根据state
字段和Running
变量显示对象的状态。如果是 C++,我会写:
<Type Name="TCB">
<DisplayString Condition="state==0">Empty</DisplayString>
<DisplayString Condition="state==0x80 && Running!=this">Ready</DisplayString>
<DisplayString Condition="state==0x80 && Running==this">Running</DisplayString>
</Type>
如何在 C 中完成?
谢谢!
PS natvis 文件在 VSCode 中与 gdb 调试器一起使用。