gpt4 book ai didi

c++ - C++ 用户定义文字的 Eclipse/MinGW 问题

转载 作者:太空宇宙 更新时间:2023-11-04 11:24:38 25 4
gpt4 key购买 nike

我使用 MinGW 作为编译器并使用 Eclipse 作为 IDE 在 C++11 中编程已经有一段时间了,而且通常不会失败。但是有一件事让我困扰了一段时间,所以我想我会试一试在这里问一下。

每次我尝试定义用户定义的文字时,Eclipse 都会用黄色下划线显示错误消息“Syntax Error”——并且还会在对所述文字的任何使用下加下划线。尽管如此,它仍能正确编译。

我的解决方案尝试:

  1. 乍一看,它似乎需要重建索引,或者它可能无法识别它是在 c++11 中编译的——但事实并非如此。我不仅有编译器标志 -std=c++11,而且我还在 Eclipse 中将内置编译器设置设置为 C++11。另外,它编译所有其他 C++11 表达式都没有失败,这似乎只是文字的问题

  2. 我的第二个想法是,也许 MinGW 没有实现足够的 G++ 版本来处理用户定义的文字。但是,运行 g++ --version 显示我运行的是 4.8.1 版,它们是在 4.7 的某个地方添加的

  3. 我最后的想法是,也许 CDT eclipse 插件已过时或其他原因,但似乎没有可用的更新版本

基本上,我被难住了。

编译良好但在编辑器中带有下划线的示例是:

constexpr float operator"" _deg ( float rad ){
return rad * 180 / 3.1415926;
}

这不是一个大问题,因为它可以编译,但我讨厌看到假错误/警告。

作为引用,我的规范是:

Eclipse Version  : Kepler Service Release 2
CDT Version : 8.5.0.201409172108
MinGW G++ Version: 4.8.1

从我没有看到任何其他与我的问题类似的事实来看,我认为这是我这边的问题——所以我希望这里有人对如何解决这个问题提出建议。

最佳答案

您需要启用 CDT does to recognize C++11 features .如果你这样做了,那很可能是 CDT 扫描器中的错误,你应该 try to report a bug

关于c++ - C++ 用户定义文字的 Eclipse/MinGW 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27134127/

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