C17标准正式发布,以后开发者可更

最近,ISOC++委员会正式发布了C++17标准,正式名称为ISO/IEC:。

基于C++11,C++17旨在使C++成为一个不那么臃肿复杂的编程语言,以简化该语言的日常使用,使开发者可以更简单地编写和维护代码。

C++17是对C++语言的重大更新,引入了许多新的语言特性:

UTF-8字符文字

折叠表达式(foldexpressions):用于可变的模板

内联变量(inlinevariables):允许在头文件中定义变量

在if和switch语句内可以初始化变量

结构化绑定(StructuredBinding):for(auto[key,value]:my_map){…}

类模板参数规约(ClassTemplateArgumentDeduction):用pairp{1,2.0};替代pairint,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支持。

对于正在进行中的C++20,预计在两年内(年夏天)完成所有功能。

1.嵌入式为什么没有嵌入式软件架构师?

2.慕尼黑正式叫停Linux开源计划,因为撑不下去了。。。

3.如何写出优美的C代码?

4.三年数电五年模电,硬件工程师到底该如何发展?

5.Linux嵌入式系统的设计方法与设计层次~

6.看这位如何背水一战从硬件工程师转到纯软件开发?

免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。

预览时标签不可点收录于合集#个上一篇下一篇

转载请注明:http://www.aierlanlan.com/grrz/465.html