问题现象
今天在看代码的时候,查找某个函数的引用,发现只有定义和声明2个地方,但我100%确定它是被用到的,果然,使用全局搜索能找到第3个地方。
其中缺少的那个如下:
原因分析
可以看到,引用没有找到是因为VS CODE觉得SUPPORT_PREVIEW是未被定义的,所以这处引用是无效的。
但是,实际上这个SUPPORT_PREVIEW是被定义了的,只不过不是在cpp文件里,而是在makefile文件里通过-D选项定义的
所以可能是VS CODE对makefile的解析还有待改进🤔
修改方法
没有找到可以修复本缺陷的插件,网上搜的解决方法如下:
1、VS CODE下 ctrl + p ,在 弹出的输入框内输入 >C/C++,选择C/C++编辑配置(JSON)
2、在c_cpp_properties.json中将你需要支持的宏添加进去
修改效果