Netbeans 7.2 显示“无法解析标识符”,尽管构建成功
- 2024-11-01 08:41:00
- admin 原创
- 48
问题描述:
我正在使用带有C/C++ 插件的Netbeans IDE 7.2(最新版本为 1.18.1.1),如果我构建我的项目,一切都很好,但 IDE 会显示错误(例如无法解析标识符......)
还有人遇到这个错误吗?我该如何解决?
解决方案 1:
这是我对另一个问题的回答的摘录。
未解析的标识符
如果 .cpp 文件的源代码如下所示
用鼠标右键单击您的项目。
检查C/C++ Code As...
运行 Reparse Project.
如果这还不够,
请按照说明Project Properties
填写输入字段。Include
设置正确的包含路径。
我希望这能帮到你。
解决方案 2:
我遇到了同样的问题,但我意识到它是在我将属性-> c++ 编译器-> 编译行-> 附加选项更改为 -std=c++11 后出现的。如果将设置更改为默认设置,“无法解析标识符”错误就会消失。
解决方案 3:
总结
带有BOM 的UTF-8也会导致问题。
问题
我刚刚遇到了同样的问题,我尝试了很多可能的解决方案,但都没有奏效,直到我找到了问题的根源,这有点好笑。我知道这个问题已经得到解答了,但我写下了我的解决方案,也许它可以解决其他遇到同样问题的人的问题。
例如,我在定义时收到“无法解析标识符向量”的错误信息struct Vector
,但它是正确的:
我在声明/定义函数等时遇到了许多类似的错误。此外,由于错误数量太多,我的代码辅助无法工作。
解决方案
我在Notepad++中打开了该
.cpp
文件,发现该文件采用常规UTF-8编码,这意味着该文件以字节顺序标记 (BOM)字符开头:
因此我单击了“编码” → “转换为无 BOM 的 UTF-8”:
注意:不要直接切换到“使用无 BOM 的 UTF-8 编码”,因为这会弄乱一些特殊字符(例如包含重音符号的字符等)。因此请进行转换。
节省
问题消失:NetBeans 中不再报告任何错误:
我希望它也能为其他人节省一些时间。
解决方案 4:
我最近在 OS X 上使用 netbeans 8.0.2 时遇到了这个错误,但无法找到解决办法。
我通过卸载 C/C++ 插件解决了该问题,当我重新打开 netbeans 时,它提示我“修复代码帮助...”。
单击提示并让其运行,问题已得到解决。
解决方案 5:
我正在使用 NetBeans 8.1,当我开始一个新的 C++ 项目时,同样的问题出现了。通过调试器运行项目后,问题就解决了。
解决方案 6:
我们在一台计算机上开发代码,在另一台计算机上编译。我一直看到这些令人分心的标记,直到我将“构建主机”设置为远程计算机(在项目的右键单击菜单中)。
我仍然不确定开发计算机上的问题是什么,因为未解析的标识符是来自标准库(等)的东西size_t
,std::vector
这里的答案似乎没有帮助。
解决方案 7:
每次发生这种情况时,我都必须重新安装 MPLAB X。其他东西有时能正常工作,但这个总是能正常工作。
解决方案 8:
我经常遇到这个错误,正如其他人提到的,通常我会添加空格字符,保存文件,删除空格字符......然后所有标识符都解决了。
这次它不起作用了。我的项目编译了数千次,并且始终有效,但在输入文本时突然崩溃了 MPLAB X IDE v3.35(Mac OSX,但可能没关系)。此后,我只有一个文件和一个结构,所有标识符都无法解析。
profile.h 文件中的结构为:
typedef struct
{
int state; ///< state machine current state
int enabled; ///< machine can be ENABLED or DISABLED
int flag; ///< to initiate profile execution
... many variables here ...
unsigned long timestamp; ///< variable used for local timing
} profile_struct;
在我的 profile.c 文件中,该结构中的任何变量都无法解析,但项目可以编译并正常运行。
经过一个小时的令人沮丧的尝试后,这解决了我的问题:删除了整个 MPLABX 缓存目录。
就我而言,它位于:
/Users/USER_NAME/Library/Caches/mplab_ide/dev/v3.35/var
(需要删除整个“var”目录;当然还要用你的用户名替换 USER_NAME)
请注意,“库”是一个隐藏目录,但如果您启用查看隐藏文件或直接通过终端进入它,您仍然可以访问它。
最后,它可能在你的电脑上,在其他地方。我通过观察,找到了我的电脑在过去 2 分钟内修改了哪些文件,方法是使用终端命令:
/usr/bin/find /Users/USER_NAME/ -mmin -2 –ls
解决方案 9:
解决 Netbeans 12 中“无法解析标识符”错误问题的三种方法。
右键点击“项目”。选择“代码帮助”。清理 C/C++ 缓存。重启 IDE。
右键单击“项目属性”--->转到构建-->在 C/c++ 编译器下,在每个 C/C++ 项目上将 C 和 C++ 编译器设置为相同的标准。
在工具-->选项--> C / C ++-->代码帮助下,将:__cplusplus = 199711L更改为:__cplusplus = 201402L(对于C ++ 14)或更改为__cplusplus = 201103L(对于C ++ 11)
我在解决自己的问题时意识到,正确/对齐的括号可能会导致上述错误。确保您的括号平衡且对齐。
解决方案 10:
复制具有 NULL 比较的代码后,我遇到了同样的问题:
while (str1[i] != ’ ’) {
out[i] = str1[i];
i++;}
经过大量搜索,结果发现奇怪的“使用的引号是问题所在,我将其更改为正常”,一切正常
while (str1[i] != ' ') {
out[i] = str1[i];
i++;}
解决方案 11:
一旦我将 main.c 重命名为 main.cpp,它就可以工作了。
根据文件扩展名,Netbeans 代码协助的行为会发生变化
解决方案 12:
尝试右键单击文件,属性->常规->从代码帮助中排除(禁用)
- 2024年20款好用的项目管理软件推荐,项目管理提效的20个工具和技巧
- 2024年开源项目管理软件有哪些?推荐5款好用的项目管理工具
- 项目管理软件有哪些?推荐7款超好用的项目管理工具
- 项目管理软件哪个最好用?盘点推荐5款好用的项目管理工具
- 项目管理软件有哪些最好用?推荐6款好用的项目管理工具
- 项目管理软件有哪些,盘点推荐国内外超好用的7款项目管理工具
- 2024项目管理软件排行榜(10类常用的项目管理工具全推荐)
- 项目管理软件排行榜:2024年项目经理必备5款开源项目管理软件汇总
- 2024年常用的项目管理软件有哪些?推荐这10款国内外好用的项目管理工具
- 项目管理必备:盘点2024年13款好用的项目管理软件