8月18日,C++标准委员会召集人HerbSutter发表了一篇博客《WehaveC++14!》。Sutter宣布,经过投票,C++14标准获得一致通过。草案文档经过一定的文字润色和修正之后,将在年内提交给ISO作为正式的C++标准发布。
C++之父BjarneStroustrup写道:“C++14按时交付了,主要的编译器提供商也已经在提供相应的实现。真是太棒了。对于想把C++当作一门现代语言使用的人而言,这是一个利好。”
文中还提到,在标准制定的同时,已经有编译器在提供部分或完全兼容的实现。这在C++标准化历史上是未曾有过的。第一个完整支持C++98的实现在标准发布大约5年之后才出现。C++11的完整支持也是在标准发布之后两年左右的时间才出现的。
C++14是对C++11的小幅修正,引入的新特性并不算很多。核心语言方面的新特性包括:
二进制字面常量
函数返回类型推导
decltype(auto)
Lambda捕获部分使用表达式
泛型的Lambda
变量模板
扩展的constexpr
deprecated属性
单引号用作数字分位符
标准库方面的扩展包括:
共享锁
标准自定义字面常量
make_unique
_t类型别名
第一个完整支持C++14的实现是今年1月发布的LLVM/Clang3.4。其发布说明中介绍了它所支持的新语言特性。要使用新特性,需要在编译时提供-std=c++1y选项。
GCC已经支持大部分C++14特性,比如二进制字面常量、函数返回类型推导和泛型的Lambda等,具体支持状态可以参见该页面(北京哪家医院治疗白癜风最好北京白癜风哪家医院好