C++14

新语言功能特性

  • 变量模板
  • 泛型 lambda
  • lambda 初始化捕获
  • new/delete 消除
  • constexpr 函数上放松的限制
  • 二进制字面量
  • 数位分隔符
  • 函数的返回类型推导
  • 带默认成员初始化器的聚合类。

新库功能特性

  • std::make_unique
  • std::shared_timed_mutex 与 std::shared_lock
  • std::integer_sequence
  • std::exchange
  • std::quoted
  • 及其他既存库设施的许多小改进,例如
    • 某些算法的双范围重载
    • 类型特征的类型别名版本
    • basic_string、 duration 与 complex 的用户定义字面量
    • 等等
本节未完成

缺陷报告

 [展开] C++14 中修正的缺陷报告(核心 276 个,库 158 个)

编译器支持

主条目: C++ 编译器支持

C++14 核心语言功能特性

C++14 功能特性
 
提案
 

GCC

Clang

MSVC

Apple Clang

EDG eccp

Intel C++

IBM XLC++

Sun/Oracle C++

Embarcadero C++ Builder

Cray

Nvidia HPC C++
(前 Portland Group/PGI)

Nvidia nvcc

 [折叠] 
按语境转换的遣词调整 N3323 4.9 3.4 18.0* 4.9 16.0 13.1.2* 5.15 10.3 8.6 16.1 9.0
二进制字面量 N3472 4.3 (GNU)
4.9
2.9 19.0 (2015)* 4.10 11.0 13.1.2* 5.14 10.3 8.6 2015 9.0
decltype(auto),普通函数的返回类型推导 N3638 4.8 (部分)*
4.9
19.0 (2015)* 4.9 15.0 13.1.2* 5.15 10.3 8.6 16.1 9.0
带初始化/泛化的 lambda 捕获 (init-capture) N3648 4.5 (部分)
4.9
3.4 19.0 (2015)* 4.10 15.0 16.1.1* 5.15 10.3 8.6 16.1 9.0
泛型 lambda 表达式 N3649 4.9 3.4 19.0 (2015)* 4.10 16.0 13.1.2* 5.15 10.3 8.6 16.1 9.0
变量模板 N3651 5 3.4 19.0 (Update 2)* 4.11 17.0 13.1.2* 5.15 10.3 8.6 17.4 9.0
扩展的 constexpr N3652 5 3.4 19.10* 4.11 17.0 13.1.2* 5.15 10.3 8.6 17.4 9.0
带成员初始化器的聚合体 (NSDMI) N3653 5 3.3 19.10* 4.9 16.0 16.1.1* 5.14 10.3 8.6 16.1 9.0
忽略/扩展内存分配 N3664 N/A 3.4 N/A N/A N/A N/A N/A 10.3 8.6 17.4 N/A
[[deprecated]] 属性 N3760 4.9 3.4 19.0 (2015)* 4.9 15.0*
16.0
13.1.2* 5.14 10.3 8.6 16.1 9.0
具大小解分配 N3778 5 3.4 19.0 (2015)* 4.10.1 17.0 16.1.1* 5.14 10.3 8.6 16.1
单引号作为数位分隔符 N3781 4.9 3.4 19.0 (2015)* 4.10 16.0 13.1.2* 5.14 10.3 8.6 2015 9.0
C++14 功能特性
 
提案
 

GCC

Clang

MSVC

Apple Clang

EDG eccp

Intel C++

IBM XLC++

Sun/Oracle C++

Embarcadero C++ Builder

Cray

Nvidia HPC C++

Nvidia nvcc

C++14 库功能特性

C++14 功能特性
 
提案
 

GCC libstdc++

Clang libc++

MSVC STL

Apple Clang

Sun/Oracle C++
标准库

Embarcadero C++ Builder
标准库

Cray C++
标准库

 [折叠] 
 的 constexpr N3302 5 3.4 19.0 (2015)* 5.15 10.3 8.6
通透的运算符函数对象 N3421 4.9 3.4 18.0* 5.15 10.3 8.6
std::result_of 与 SFINAE N3462 5 19.0 (Update 2)* 5.15 10.3 8.6
 的 constexpr N3469 5 3.4 19.0 (2015)* 5.15 10.3 8.6
 的 constexpr N3470 5 3.4 19.0 (2015)* 5.15 10.3 8.6
 、  和  的 constexpr N3471 5 3.4 19.0 (2015)* 5.15 10.3 8.6
改进的 std::integral_constant N3545 5 3.4 19.0 (2015)* 5.15 10.3 8.6
 和  的用户定义字面量 N3642 5 3.4 19.0 (2015)* 5.15 10.3 8.6
空向前迭代器 N3644 5 (部分) 3.4 19.0 (2015)* 5.15 10.3 8.6
std::quoted N3654 5 3.4 19.0 (2015)* 5.15 10.3 8.6
std::make_unique N3656 4.9 3.4 18.0* 5.15 10.3 8.6
异质关联查找 N3657 5 3.4 19.0 (2015)* 5.15 10.3 8.6
std::integer_sequence N3658 5 3.4 19.0 (2015)* 5.15 10.3 8.6
std::shared_timed_mutex N3659 5 3.4 19.0 (2015)* 5.15 10.3 8.6
std::exchange N3668 5 3.4 19.0 (2015)* 5.15 10.3 8.6
修正无 const 的 constexpr 成员函数 N3669 5 3.4 19.0 (2015)* 5.15 10.3 8.6
std::get() N3670 5 3.4 19.0 (2015)* 5.15 10.3 8.6
双范围的 std::equal 、 std::is_permutation 、 std::mismatch N3671 5 3.4 19.0 (2015)* 5.15 10.3 8.6
C++14 功能特性
 
提案
 

GCC libstdc++

Clang libc++

MSVC STL

Apple Clang

Sun/Oracle C++
标准库

Embarcadero C++ Builder
标准库

Cray C++
标准库

你可能感兴趣的:(c++,java,开发语言)