分享到: 分享到QQ  分享到Twitter

作者: BigLoser    访问次数: 940 创建时间: 2020-05-19 10:38:52 更新时间: 2024-04-24 09:35:20

最近发布的 GCC 10 编译器已对 C++20 的主要功能协程(Co-Routines)进行了初始支持,但是除非显式地开启该选项,否则并不会启用此功能。

 

当 GCC 10 在 C++20 模式(std=c++20) 中运行时,默认情况下会启用 C++ 协程。而将于明年发布的 GCC 11 在 C++20 推出时将具有协程功能,到那时,GNU 编译器集合中支持 C++20 的剩余部分也应该会被解决。

 

协程(Coroutines)是 C++20 的主要功能之一,它允许某个函数在暂停执行之后再恢复。有关 C++ 协程的示例语法和更多详细信息请在 cppreference.com 上查看。可以看到,官方对协程的定义是:

 

A coroutine is a function that can suspend execution to be resumed later. 
协程是能暂停执行以在之后恢复的函数。

 

与 concepts, modules, spaceship operator 和内存模型改进等一起共同构成 C++20 的主要特性。

 

C++20 标准在今年年初确定了技术规范后,将于近期正式发布。GCC 10 已经配备了 C++20 的大部分内容,而对于 GCC 11 来说,其余的项目很有可能将会被解决,包括像上周看到的为 std=c++20 启用协程的更改。

 

在 C++ 标准的状态页面上,仍有面向 GCC 的 C++20 功能处于开发阶段。如果想知道 LLVM Clang 上的 C++20 状态,可查看此页面

年度最有价值文章

季度最有价值文章

月度最有价值文章

帖子投票

名称 是否有价值
kideny
BigLoser

投票统计

是否原创: 0 %

0 % Complete (success)

是否有价值: 100 %

100% Complete

是否有素质: 100 %

100% Complete (warning)

是否合法: 100 %

100% Complete

   群组工具

   外部链接