C++17 标准正式发布:开发者可更简单地编写和维护代码

by admin on 2020年4月15日

在方今了却的冬辰 ISO C ++规范会议(Kona)上,C ++ 17
发布在技巧阳春到位,仅剩下部分 ISO 相关的连篇累册,将要提交至最终的 ISO
投票表决。该会议由 Plum Hall 和专门的学问 C ++ 基金会主办,100 六人代表 9
个国家参预了议会。

集会上并不曾太多让人欢快的跟新个性相关的广播发表,首倘使成就 C ++ 17
的稽核意见并颁发产物。可是,新加上的 std :: byte
type,对于众多客户来讲也不失为贰个好音信。

 图片 1

图片 2

昨日,ISO C++
委员会正规发表了 C++ 17
规范,正式名为 ISO/IEC 14882:2017。

而外 C ++ 17 之外,从表露的门径图来看,C ++ 20 也已在中途。听他们讲,C ++ 20
的相干职业将从当年夏季起来,猜想在2年内(二〇一三年夏日)达成有着机能。

图片 3

(文/开源中华夏族民共和国卡塔尔    

遵照 C++ 11,C++ 17 目的在于使 C++
成为一个不那么肥胖复杂的编制程序语言,以简化该语言的日常使用,使开垦者能够更简便地编写和保险代码。

C++ 17 是对 C++ 语言的注重更新,引进了繁多新的语言特色:

  • UTF-8 字符文字

  • 折叠表明式 (fold expressionsState of Qatar:用于可变的模版

  • 内联变量 (inline variables卡塔尔国:允许在头文件中定义变量

  • 在 if 和 switch 语句内得以开首化变量

  • 布局化绑定 (Structured Binding卡塔尔国:for (auto [key,value] : my_map)
    {…}

  • 类模板参数规约 (Class Template Argument Deduction卡塔尔(قطر‎:用 pair p{1,
    2.0}; 替代 pair<int, double>{1, 2.0};

除此以外,C++ 17 还拉动了并行 STL,派生自 Boost 的公文系统库等别的特色。

作为规范库中新的首要“词汇类型”,std::string_view 和 std::optional 将会以函数参数和重临类型的款型布满运用。那允许开垦者编写更简明的签名,比方:在字符串类型上能够用 std::string_view 代替模板化
(Templatizing卡塔尔国;开辟者可在函数体内更加多地用 std::variant 和 std::any 类型作为类成员,并内部使用。

咱俩也曾报纸发表过 C++ 17
的部分新特征,具体内容可点此查看。

LLVM 的 Clang 编写翻译器也早已将代码中现身“C++1z”的地点改革为“C++17”(C++ 17
曾被称之为 C++1z)。GCC 和 LLVM/Clang 都使得地提供了完全的 C++ 17 援助。

图片 4

对李晓明在举办中的 C++ 20,估摸在四年内( 2019 年夏天)实现全部功能。

【编辑推荐】

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图