ISO C++ 委员会正式发布了 C++20 标准,命名为 ISO/IEC 14882:2020。
C++20 是一次重大的更新,引入了许多新特性:
- 模块 (Modules)
- 协程 (Coroutines)
- 范围 (Ranges)
- 概念与约束 (Constraints and concepts)
- 指定初始化 (designated initializers)
- 操作符 <=> != ==
- constexpr支持:new/ delete、dynamic_cast、try/ catch、虚拟
- constexpr 向量和字符串
- 计时:日历、时区支持
- std::format
- std::span
- std::jthread
像 Concepts/Ranges/Modules/Coroutines 这些新特性将会对开发者及 C++ 生态产生不小的影响,也为这门“高龄”编程语言增添不少魅力。
详细变化查看 cppreference.com, open-std.org 和 Wikipedia。
如果希望获得正式的 C++20 标准,需支付 198 瑞士法郎(折合人民币 1464 元)进行购买。
草案版本可以免费获取:
https://github.com/cplusplus/draft/tree/c++20
草案和正式版本存在细微的差异,因为标准委员会不一定完全采用草案的内容,通常是从草案中剔除部分内容再发布正式版。不过这对于普通开发者几乎没影响,因为开发者使用的编译器都是厂商基于标准的实现。
本文转自OSCHINA
本文标题:C++20 标准 (ISO/IEC 14882:2020) 正式发布
本文地址:https://www.oschina.net/news/123834/cpp20-published