Qt Creator c++11语法高亮显示通用项目

Qt Creator c++11 syntax highlighting for generic projects

本文关键字:项目 显示 高亮 Creator c++11 语法 Qt      更新时间:2023-10-16

我的核心问题是,当使用Qt Creator作为"通用"(非Qt)项目的代码编辑器时,我如何告诉它使用c++11语法高亮显示?

我有一个c++11项目,我已经工作了一段时间,我决定给Qt Creator一个尝试。这是一个普通的c++项目,带有手工编写的makefile等等。

Qt Creator打开了项目("eSLIME"),并创建了三个文件:配置,eSLIME。包括和eSLIME.files。它没有创建。pro文件。

似乎不能识别c++11调用。例如,它以绿色下划线"#include <unordered_set>",表示不存在这样的文件或目录。

我怀疑我应该在。config文件中放一些东西,但我不知道是什么,谷歌搜索也没有帮助。我尝试附加-std=c++0x,但没有成功。

PS:代码太坏了,现在无法构建,这就是为什么我要切换到IDE

两年过去了,但是Qt Creator没有任何变化(至少对于linux):即使是最新版本(现在是3.5)也不能解析c++ 11头文件。

问题是,默认情况下__cplusplus在内部Qt Creator解析器被定义为小于201103L的一些值,在STL头中有很多检查这个宏,像这样:

#if __cplusplus < 201103L
#include <bits/c++0x_warning.h>
// disable all tasty functionality
#endif

首先我尝试添加到*。config修改如下行:

#define __cplusplus 201103L

什么也没有发生。

经过一番调查,我终于找到了合适的解决方案:只需在*中写入。配置:

#define __cplusplus 201103

神奇地一切都活了!

Qt 5.0.2支持c++11语法,然后

下载QT 5.0.2(包含QT Creator 2.7.0)。