如何使用Clang中的C++ 11特性?

问题描述 投票:0回答:1

如何在Clang中使用最新的C++ 11特性?支持哪些(子)特性集?

c++ macos compilation g++ constexpr
1个回答
84
投票

你将需要clang 3.3来使用C++ 11中最相关的特性集。阅读 Clang中的C++支持 以获得最新支持的完整功能列表。Clang 3.3号称是完整的C++11特性。

Clang的命令行是兼容gcc的,所以你必须通过下面的命令行开关来启用C++11支持。

-std=c++11

还有一堆Clang 3.3支持的后C++11特性(如decltype(auto)、成员初始化器和聚合)。使用这个命令行开关来启用它们

-std=c++1y

16
投票

这里是clang支持的最新特性列表。

http:/clang.llvm.orgcxx_status.html。

要激活C++11,你必须在你的clang调用中添加-std=c++11,就像gcc一样。如果你使用的IDE是clang-aware或gcc-aware,有一个特定的项目设置选项可以做到这一点。

© www.soinside.com 2019 - 2024. All rights reserved.