Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/131.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 关闭eclipse错误(不是真正的错误)_C++_C++11_Eclipse Cdt - Fatal编程技术网

C++ 关闭eclipse错误(不是真正的错误)

C++ 关闭eclipse错误(不是真正的错误),c++,c++11,eclipse-cdt,C++,C++11,Eclipse Cdt,可能重复: 使用GCC 4.8/CLAN 3.3 C++支持,远远超过伊柯丽斯在特征支持方面的语法检查,伊柯丽斯将许多事情标记为实际上是有效的代码模板混淆,这是我的主要问题,但还有其他问题。 不管怎样,当我编译或尝试编译时,遇到一些问题,请查看更多信息,无论编译器正在做什么,它都会完成它的工作,并且错误会传播出去,但它所说的“OK”代码仍然在红色和金色蜘蛛下面分别加下划线表示错误和警告,这使得查看发生了什么变得更加困难 有没有办法消除这些错误/警告 更好的方法是,只有在编译尝试之后,并且只要代

可能重复:

使用GCC 4.8/CLAN 3.3 C++支持,远远超过伊柯丽斯在特征支持方面的语法检查,伊柯丽斯将许多事情标记为实际上是有效的代码模板混淆,这是我的主要问题,但还有其他问题。 不管怎样,当我编译或尝试编译时,遇到一些问题,请查看更多信息,无论编译器正在做什么,它都会完成它的工作,并且错误会传播出去,但它所说的“OK”代码仍然在红色和金色蜘蛛下面分别加下划线表示错误和警告,这使得查看发生了什么变得更加困难

有没有办法消除这些错误/警告

更好的方法是,只有在编译尝试之后,并且只要代码的相关部分没有更改,但通常仍保持启用状态,就可以消除警告


实际上最好的插件应该是Eclipse,它支持所有C++11,或者至少比Juno本身支持更多,但是我似乎找不到

转到窗口->首选项将分析写入搜索字段选择C/C++->Code analysis,在那里你可以关闭所有功能。

更新:我已经很久没有发布原始答案了,它已经过时了。我今天再次检查了2014年3月15日:在Eclipse开普勒构建id 20130614-0229中,它足以

项目下添加>属性> C/C++ + Buffue>设置,然后在工具设置选项卡GCC C++编译器>杂项-STD= C++ 11标志,

然后在“发现”选项卡上的“窗口>首选项>C/C++>构建>设置”下,选择“CDT GCC内置编译器设置”,并向命令添加-std=C++11标志以获取编译器规格。在我的机器上,更改后的外观如下:

${COMMAND}-E-p-v-dD-std=c++11${INPUTS}

清理并重新生成项目和索引项目>C/C++索引>重建,因为Eclipse倾向于缓存错误消息并显示它们,即使更改设置后错误消息消失了

这肯定能在我的机器上工作。如果在你的机器上没有,那么你可能想尝试一下:尽管我既不确定这种方法的正确性,也没有必要在我的机器上这样做。截至2014年3月7日,用户表示它帮助了他们,而上述方法没有

原来的帖子,现在已经过时了:

这些虚假的错误来自于。整个事情是因为CODAN和编译器对C++和Codan的理解不同。 可能的解决办法

单击项目属性,然后单击C/C++常规>代码分析>语法和语义错误,并取消选择任何错误。缺点:您很可能会禁用大多数错误,并一个接一个地发出警告,这非常烦人

在C/C++常规>代码分析>语法和语义错误中完全禁用静态分析。您不会从Codan中获得真正的错误,但只能在以后从编译器中获得

它们都不是解决方案,但至少您仍然可以使用EclipseIDE


试着跟随这个链接,它帮助了我一段时间,@JonnyHenly,但我确实想编译它。我对C++11没有太多经验,但是否可以使用Eclipse编辑类,然后在编译时使用终端或命令提示符手动运行编译器。我知道这很简单,但我认为这会解决您的问题,我也可以使用Gedit。这完全是日食useless@soandos是的,很烦人。我不明白他们为什么那样发布IDE。用户要做的第一件事就是在谷歌上搜索,找出如何禁用这个糟糕的功能。看我的链接答案,它为我解决了问题。看起来不错。顺便说一句,我觉得编译器编写人员在Eclipse能够识别之前就已经实现了这些特性是荒谬的bad@soandos我发现更可笑的是,他们生产了一个单独的独立工具Codan来完成编译器的工作。我希望情况会随着CLAN而改变,最后静态分析工具CLAN而不是Codan,编译器再次CLAN将对C++有同样的理解。如果你不先禁用这个bug特性,他们不应该发布一个实际上毫无用处的IDE。更新后的答案也适用于gcc的其他std选项,例如我使用的:${COMMAND}-E-P-v-dD-std=c++11${INPUTS}。另外,在我读到的关于堆栈溢出的另一个答案中,它提到将CDT GCC内置编译器设置排序到树的顶部。之后,我右键单击该项目并重新生成索引,从而删除了错误。