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

soa*_*dos 22 c++ eclipse-cdt c++11

可能重复:
禁用Eclipse的错误发现.(Codan误报)

到目前为止,使用GCC 4.8/Clang 3.3 C++支持Eclipse正在进行语法检查(在功能支持方面),Eclipse将许多事情标记为实际上有效代码的错误(模板别名恰好是我的主要问题,但是还有其他问题).

当我编译(或尝试无论如何,遇到一些问题,请参阅此处了解更多)无论编译器正在做什么工作都能完成它的工作,并且它的错误会被传播,但是它所说的代码仍然可以强调(红色分别是错误和警告的金蜘蛛,这使得查看正在发生的事情变得更加困难.

有没有办法摆脱这些错误/警告?

更好的方法是只有在编译尝试之后才能摆脱警告,并且只要代码的相关部分没有改变,但仍然保持它们一般启用.

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

Ali*_*Ali 20

UPDATE: 这是一个很长的时间,因为我张贴的原始答案,它已经过时.我今天(2014年3月15日)双重检查:在Eclipse开普勒(编译号20130614-0229)就足够了

  • 下添加项目>属性> C/C++编译>设置然后上工具设置标签 GCC C++编译器>其它-std=c++11标志,

  • 然后在窗口>首选项> C/C++>构建>设置发现选项卡选择CDT GCC内置的编译器设置和添加-std=c++11标志命令来获得编译器的规格.在我的机器上,它在更改后看起来像这样:

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

  • 清洁和重建两个项目索引(项目> C/C++指数>重建)作为Eclipse的趋向缓存错误信息,并告诉他们,即使他们是在改变设置后消失.

这肯定适用于我的机器.如果它没有在你的上面,那么你可能想要对此有所了解:虽然我不确定这种方法的正确性,也不是必须在我的机器上进行,但是对Eclipse的C++ 11完全支持.截至2014年3月7日,用户声称它帮助了他们,而上述方法没有.


原帖,现已过时:

这些虚假错误来自Codan.整个问题是因为Codan和编译器对C++有不同的理解, Codan是错误的.

可能的解决方法

  1. 单击项目属性,然后单击C/C++ General> Code Analysis>语法和语义错误,并取消选择您获得的任何错误错误.缺点:你很可能最终会逐一禁用大部分错误和警告,这非常令人讨厌.

  2. C/C++ General> Code Analysis>语法和语义错误中完全禁用静态分析.您不会从Codan获得真正的错误,但只能在编译器中获得.

它们都不是解决方案,但至少你仍然可以使用Eclipse IDE.

  • @soandos没问题.如果您不首先禁用此错误功能,则它们不应发送实际上无用的IDE. (2认同)

Koc*_*cka 9

转到窗口 - >首选项写入分析到搜索字段选择C/C++ - >代码分析,然后你可以关闭所有内容.