假设我有一个C程序,看起来像这样...
#define Pointlike(type) \
type lat;\
type lng;
typedef struct Point {
Pointlike(void*)
} Point;
typedef struct {
Pointlike(int)
} IntPoint;
int main(){
Point *point = &(Point){.lat = (void*) 0, .lng = (void*) 1};
IntPoint *intPoint = &(IntPoint){ .lat = 0, .lng = 1 };
IntPoint *unsafe = (IntPoint*) point;
return 0;
}
在我当前的配置下,VsCode Intellisense无法识别Pointlike
将提供的字段。
我的配置中是否遗漏了什么?我可以想象这是预期的行为,因为我不一定期望Intellisense在默认情况下运行预处理器。是否有一种方法(例如,将gcc -E
导入Intellisense)以某种方式拾取这些符号?
1条答案
按热度按时间yks3o0rb1#
在最新版本的C/C++ Intellisense中,这似乎是开箱即用的。