如何为 C 智能感知引擎定义宏?

新手上路,请多包涵

使用 "Default" 智能感知引擎时,我的C++项目中的一些符号无法解析。事实证明,这是因为它们位于由 #ifdef 保护的标头中,这取决于通过 makefile 传递给 gcc 的宏以及 -D 标志。我如何告诉智能感知引擎这些定义,以便它能够编译标头的这些部分?

原文由 Kamil Kisiel 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 956
1 个回答

遵循此线程中的建议后,我仍然无法让 vscode 识别我在 c_cpp_properties.json 中定义的宏。

事实证明,如果您使用 vscode 的 CMake 扩展并选择了“all”目标,那么您在 CMakeLists 中定义的任何宏都不会被识别,c_cpp_properties.json 中的任何宏也不会被识别。这就像从状态栏中选择要构建的目标一样简单,并且智能感知能够获取为该目标定义的任何宏。不需要 c_cpp_properties.json。

原文由 ImJimmi 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题