新版kotlin协程_C ++ 20的新增功能:模块,概念和协程

新版kotlin协程

C ++ 20是古老的通用系统编程语言的最新版本,已被国际标准化组织(ISO)认为是功能完善的,其功能包括模块,概念和协程。

C ++创始人Bjarne Stroustrup说,一旦开发人员学习了C ++概念并克服了“牙齿上的烦恼”,这两个概念和模块都将简化C ++的使用。

[有关C ++的更多信息:C ++ 中的元编程简介 Bjarne Stroustrup挖掘了通用编程,以获得更好的C ++ | 通过InfoWorld的App Dev Report新闻通讯了解编程方面的热门话题。 ]

模块使程序员可以指定和使用模块化组件,因此C ++开发人员最终可以摆脱对程序编写的复杂,易于出错的预处理的使用。

概念允许程序员在模板的参数上指定模板的要求。 通过使模板的接口精确,可以满足模板支持通用编程的意图。 Stroustrup说,代码质量将得到改善,模板将更易于使用。

协程是程序组件,用于泛化用于非抢先式多任务处理的子例程,从而使执行被暂停和恢复。 协同程序适合于事件循环和迭代器之类的任务,并通过扩展启用了协程,这些扩展包括新的语法形式和对语言中现有语义的修改。

C ++ 20中的其他新功能包括:

  • 一个C ++ 20同步库,为C ++的低级并发编程支持带来了障碍,闩锁和其他一些修改。 该库旨在供专业程序员使用,是为更好地支持现代硬件上的细粒度控制提供支持的一部分。
  • 各种编译时计算改进。
  • 范围,提供用于处理元素范围的组件,包括各种视图适配器。
  • 合同,指定功能的前提条件和条件。
  • 功能测试宏,定义一组与C ++ 11或更高版本中引入的语言和库功能相对应的宏。
  • 查找中的预先计算的哈希值,使用成员函数扩展了无序容器的接口,成员函数具有一个附加参数,该参数为要查询的值采用预先计算的哈希值。 此建议的基本原理是,在业务场景中,经常必须一次在多个容器中搜索同一关键字。 到目前为止,这是一个昂贵的提议,迫使每次查找都要重新计算哈希值。
  • 扩展语句,可对元组,数组,类,参数包或范围的每个元素进行语句的编译时重复。
  • std::optional单子运算。 std::optional是一种重要的词汇类型,它的一些用法很冗长,可以从允许进行功能组合的操作中受益。
  • 隐式创建用于低级对象操作的对象,其中,根据需要在新分配的存储中按需创建足够琐碎类型的对象,以赋予程序定义的行为。

ISO有望在2020年正式采用C ++20。但是,许多C ++ 20功能已经在实验或生产中使用,例如GCC(GNU编译器集合)中的概念以及Clang C ++中的协程(Coroutines ,Stroustrup说。 该语言本身将在今年40岁,并于1979年秋季以Classes的形式在C中首次亮相。该名称在1984年更改为C ++。

翻译自: https://www.infoworld.com/article/3353419/whats-new-in-c-plus-plus-20-modules-concepts-and-coroutines.html

新版kotlin协程

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值