gpt4 book ai didi

c++ - 是否可以全局#define宏? (供实时错误检查器查看)

转载 作者:行者123 更新时间:2023-12-02 10:10:48 25 4
gpt4 key购买 nike

“宏”是指简单的值,例如:“#define FOO 123”。
我安装了VS 代码(不是Visual Studio)以及C / C++和Visual Intellicode扩展。
我有一个在另一个IDE中创建的项目的文件夹,我仍将使用该文件夹进行调试等操作,尤其是针对某些嵌入式目标。
IDE及其配置代码生成器/供应商库使用了全局定义的概念。
(基于Eclipse)。
例如。有一些#define可以在每个源文件中看到,而没有它们的任何 header :它们被传递给编译器以及IDE的“实时”错误检查引擎。
某些自动生成的标题文件或作为供应商的库提供的头文件都已设置为例如这样的全局#define将从库涵盖的一系列目标中选择要为其编译具体硬件目标的代码。
因此,我在VS Code中打开该文件夹,然后从该文件夹中打开源文件。
VS Code的实时错误检查器强调某些类型。它可以找到它们(Ctrl + Lclick),但是它们被标记为“未定义”。大概是因为它不了解那些全局定义,因此没有任何特定于目标的代码通过其编译开关启用。
我发现了一个关于将定义添加到makefile项目中进行构建的SO问题。
这在这里无济于事,我这样做不想用VS Code构建
我希望VS Code知道这些类型'实时'错误检查器,从而使不是真的问题的视觉指示消失。
编辑:当然,自动补全也不适用于“未定义”类型,我也想修复该类型。
这可能吗?

最佳答案

按Ctrl + Shift + P打开命令窗口,然后,如果以前安装了C / C++扩展名,将有多个C / C++设置(多少取决于您打开的文件夹中的源类型)。工作区)。
从那里,您可以选择: C / C++:编辑配置(UI)
C/C++: Edit Configurations (UI)
在随后打开的标签页上,您将看到诸如编译器路径之类的设置以及特定于编译器的智能感知模式的选择。
滚动到该位置下方,将出现“定义指令”框。
可以通过其中的3个默认预定义项目轻松发现它们:_DEBUG,UNICODE和_UNICODE。
请参见下图中心的黄色框。
不要被红色方框分散注意力。
(很抱歉,它不是英语,但是盒子的大小和位置应该有一定的方向。)
Defines

关于c++ - 是否可以全局#define宏? (供实时错误检查器查看),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63615135/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com