0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

C语言的重大更新 C++17标准发布

5RJg_mcuworld 2017-12-08 14:46 次阅读

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

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

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

UTF-8 字符文字

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

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

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

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

类模板参数规约 (Class Template Argument Deduction):用pair p{1, 2.0};替代pair{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,预计在两年内( 2019 年夏天)完成所有功能。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ISO
    ISO
    +关注

    关注

    0

    文章

    236

    浏览量

    39292
  • C++
    C++
    +关注

    关注

    21

    文章

    2066

    浏览量

    72899

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

文章出处:【微信号:mcuworld,微信公众号:嵌入式资讯精选】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    C语言标准#硬声创作季

    标准C语言
    学习电子
    发布于 :2022年10月27日 21:12:18

    1.5C语言C++、C++17、VC++

    C++
    电路设计
    发布于 :2023年01月10日 12:40:14

    C语言入门 2.1 C语言标准以及发展历程(一) 易道云编程

    C语言编程语言
    电路设计
    发布于 :2023年01月10日 13:57:24

    C语言入门 2.1 C语言标准以及发展历程(三) 易道云编程

    C语言编程语言
    电路设计
    发布于 :2023年01月10日 14:00:44

    C语言入门 2.1 C语言标准以及发展历程(二) 易道云编程

    C语言编程语言
    电路设计
    发布于 :2023年01月10日 14:04:03

    C语言标准库函数大全

    C语言标准库函数大全
    发表于 04-10 20:49

    C语言规范标准

    C语言规范标准,,,
    发表于 11-07 17:14

    【视频】C语言知识免费视频教程-C语言关键字_volatile-连载视频第7集(视频持续更新……)

    本帖最后由 张飞电子学院蔡琰 于 2021-4-26 14:17 编辑 大家好!该系列视频为C语言免费教程, 蔡琰老师为大家讲解。持续关注,我们会继续更新!大家有关于
    发表于 04-12 10:40

    C语言知识免费视频教程-C语言关键字_if-else-1连载视频第17集(视频持续更新……)

    大家好!该系列视频为C语言免费教程, 蔡琰老师为大家讲解。持续关注,我们会继续更新!大家有关于C语言以及工作中遇到的关于单片机
    发表于 06-25 16:00

    MCS的C语言标准C语言的区别

    MCS的C语言标准C语言的区别MC9S12的C语言
    发表于 07-20 07:06

    标准C语言与嵌入式C语言有哪些区别

    世界使用最广泛的系统编程语言。嵌入式CC的扩展,在嵌入式系统中应用于编写嵌入式软件。针对嵌入式开发的C语言就是嵌入式
    发表于 12-14 06:15

    什么是C语言标准

    ✍ 1、C 语言标准什么是 C 语言标准呢? 我们生活的现实世界,就是由各种
    发表于 12-15 09:10

    C++17 STL标准库学习教材电子书免费下载

    C++11,C++14和C++17标准为C++添加了许多新特性。当前的C++已经和10年前的C++完全不同了。C++标准并不是用来规范语言的,其实为了让相应编译器理解相应的语义,也是为
    发表于 02-28 08:00 3次下载
    <b class='flag-5'>C++17</b> STL<b class='flag-5'>标准</b>库学习教材电子书免费下载

    C++17引入的一个新特性void_t简析

    void_t是C++17引入的一个新特性,它的定义很简单(有些编译器的实现可能不是这样,但也大体类似)
    的头像 发表于 03-06 09:37 871次阅读

    a17和a16的参数区别

    a17和a16的参数区别  在当今互联网技术飞速发展的时代里,编程语言也在不断的更新和改进。作为现代编程语言中的经典之作,C++一直占据着重要的地位。其中最新的版本,
    的头像 发表于 08-16 11:47 917次阅读