开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散

昨日,ISO C++ 委员会正式宣布了 C++ 17 标准,正式名称为 ISO/IEC 14882:2017。

基于 C++ 11,C++ 17 旨在使 C++ 成为一个不那么竽暌狗肿复杂的编程说话,以简化该说话的日常应用,使开辟者可以更简单地编写和保护代码。
C++ 17 是对 C++ 说话的重大年夜更新,惹人了很多新的说话特点:
-
折叠表达式 (fold expressions):用于可变的模板
-
内联变量 (inline variables):许可在头文件中定义变量
-
在 if 和 switch 语句内可以初始化变量
-
构造化绑定 (Structured Binding):for (auto [key,value] : my_map) {…}
-
此外,C++ 17 还带来了并行 STL,派生自 Boost 的文件体系库等其他特点。
作为标准库中新的关键“词汇类型”,std::string_view 和 std::optional 将会以函数参数和返回类型的情势广泛应用。这许可开辟者编写更简单的签名,例如:在字符串类型上可以用 std::string_view 替代模板化 (Templatizing);开辟者可在函数体内更多地用 std::variant 和 std::any 类型作为类成员,并内部应用。
我们也曾报道过 C++ 17 的一些新特点,具体内容可点此查看。
UTF-8 字符文字
-
类模板参数规约 (Class Template Argument Deduction):用 pair p{1, 2.0}; 替代 pair<int, double>{1, 2.0};
LLVM 的 Clang 编译器也已经将代码中出现“C++1z”的处所修改为“C++17”(C++ 17 曾被称为 C++1z)。GCC 和 LLVM/Clang 都有效地供给了完全的 C++ 17 支撑。
对于正在进行中的 C++ 20,估计在两年内( 2019 年夏天)完成所有功能。

【编辑推荐】
- 华为 ServiceComb 项目全票经由过程进入 Apache 孵化器
- 10个JavaScript常见BUG及修复办法
- 法度榜样员,在你 40 岁之前,要有个 Plan B
- Gluon给人工智能开辟人员带来了的自我调优的机械进修
- Android Go体系来了,世界“功能机”将成汗青
推荐阅读
开辟者大年夜赛路演 | 12月16日,技巧立异,北京不见不散 懂得若何经由过程设备 Linux 计算机来根据时光主动唤醒和封闭。不要成为一个电能浪费者。如不雅你的电脑不须要开机就请把它们关机>>>详细阅读
本文标题:C++17 标准正式发布:开发者可更简单地编写和维护代码
地址:http://www.17bianji.com/lsqh/39515.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示