Clang定义了什么宏来宣布c++ 11模式(如果有的话)?
What macro does Clang define to announce C++11 mode, if any?
Clang定义了什么宏来宣布c++ 11模式,如果有的话?
GCC定义了__GXX_EXPERIMENTAL_CXX0X__
,至少一些版本是这样的。MSVC似乎在默认情况下至少对_MSC_VER >= 1600
打开了支持。
它对每个单独的功能使用不同的预处理器测试,如
#if __has_feature(cxx_decltype)
用于测试decltype
是否实现。
查看此处的完整列表
http://clang.llvm.org/docs/LanguageExtensions.html checking_upcoming_features
标准规定可以查看_cplusplus的值来确定编译器针对的是哪个标准。尽管在实践中,你可能无法用这些信息做很多事情。参考Bo Persson的答案,可以找到更好的解决方案。
c++ 98/03 - 199711L
c++ 11 - 201103LClang定义了相同的宏,主要是为了与GCC的libstdc++兼容。
我似乎记得开发人员更喜欢libc++中的特定功能检查:
(向下滚动一些)
相关文章:
- 如果没有malloc,链表实现将失败
- 具有奇怪重复模板模式的派生类中的成员变量已损坏
- 如果我只是不访问queue_front节点的子节点,而是将它们推到队列中呢?还是BFS吗
- std::map<struct,struct>::find 找不到匹配项,但是如果我循环通过 begin() 到 end(),我在那里看到匹配项
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 设计一个只能由特定类实例化的类(如果可能的话,通过make_unique)
- 文件模式标志"ios::app"是否用于删除文件(如果文件已存在)?
- 避免"如果清理失败"重复的模式
- 在发布模式下崩溃,但如果可调试为 true - 不是..什么是可能的问题
- 如果 Proactor 设计模式优于异步 I/O,为什么它在 ASIO 中不是默认值?
- 如果复合模式中的每个复合项都有其自己的许多独特属性,是否可以
- C++可变参数模板函数调用应用了什么模式匹配(如果有)
- 如果命令不只是打印结果,而是进入某种交互模式,如何处理来自C++的终端命令执行的输出?
- 如果我在DFS方法中生成频繁模式,如何构建DFS树
- 如果从文件流中读取数据,gSOAP为什么将stdin模式设置为二进制
- 代码:块调试模式:我的代码崩溃,如果构建和运行,但如果调试/继续
- Clang定义了什么宏来宣布c++ 11模式(如果有的话)?
- 如果我为多个编写器使用额外的互斥锁,我可以在 SQLite3 中使用 WAL 模式吗?
- 如果字符位于引号之间,则不匹配(AKA具有编程字符串模式)