gpt4 book ai didi

c++ - Clang 3.1 和 C++11 支持状态

转载 作者:IT老高 更新时间:2023-10-28 21:40:23 26 4
gpt4 key购买 nike

来自 clang 的 C++11 支持状态网站,http://clang.llvm.org/cxx_status.html ,上面写着,“Initializer List”和“Lambda Expression”都是从3.1版本开始支持的。

但是,使用 LLVM/Clang 中继 (3.2),针对初始化列表和 lambda 表达式进行编译会产生错误消息。

有谁知道 Clang >3.1 是否支持这些功能?

最佳答案

默认情况下,clang++ 不会启用 C++11 功能 - 你有 to pass an additional flag during compilation .

clang++ -std=c++11 [input files...]

或者

# enables some additional C++11 extensions GCC has
clang++ -std=gnu++11 [input files...]

此外,您可以在使用 libstdc++ 和 Clang 自己的 libc++ 之间切换,它们是 C++ 标准库的不同实现。 libc++ 在某些情况下可能比现有的 libstdc++ 库更好地实现 C++11 标准。

# uses clang's C++ library in C++98 mode
clang++ -stdlib=libc++ [input] # uses clang's C++ library

# uses clang's C++ library and enables C++11 mode
clang++ -stdlib=libc++ -std=c++11 [input]

如果您在具有过时版本的 libstdc++(如 Mac OSX)的环境中使用 Clang,后者很重要,但请注意这两个 C++ 库彼此不兼容,因此如果要使用它,则必须重建对 libc++ 的任何依赖项。

关于c++ - Clang 3.1 和 C++11 支持状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10601545/

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