【发布时间】:2013-06-01 15:39:16
【问题描述】:
标题非常具有自我描述性。我已经下载了 Qt Creator 2.7.0,我正在尝试编译一些基本的 C++11 代码:
int my_array[5] = {1, 2, 3, 4, 5};
for(int &x : my_array)
{
x *= 2;
}
我收到以下错误:
range based for loops are not allowed in c++ 98 mode
然而,根据this article,这个版本的 Qt Creator 支持 C++11。那么如何启用呢?
【问题讨论】:
-
Qt Creator 不是编译器。当您阅读“Qt Creator 支持 C++11”时,这意味着代码完成引擎(在本例中为 Clang)支持 C++11 语法。
-
@cmannett85 Qt Creator 仍然不使用 Clang 作为 C++ 语法解析器。有一些努力,但 Clang 的 API 和该解决方案的一般性能延迟了这一点。目前该方向的工作位于here。