C++ 20 准备发布,C++ 23 提上议程

2020年02月16日

根据 Reddit C++ 版块上的信息,C++ 20 已经正式通过委员会草案,这意味着 C++ 20 可以准备发布。

“在近期 ISO C++ 委员会会议上,我们完成了 C++ 20 委员会草案,并投票决定将国际标准草案(DIS,Draft International Standard)发送出去,以进行最终批准和发布”,帖子介绍:“在程序上,DIS 可能会被拒绝,但是由于我们的程序和过程,这种情况极不可能发生。这意味着 C++ 20 已经完成,并将在几个月后发布该标准。”

C++ 20 是近十年来影响最大的一个版本,新的特性众多,包括:

  • 模组(Modules)
  • 协程(Coroutines)
  • 标准库 Concepts 的概念
  • 范围(range)
  • constexpr支持:newdeletedynamic_casttrycatch、虚拟
  • constexpr 向量和字符串
  • 计时:日历、时区支持
  • std::format
  • std::span
  • std::jthread

预计这些新特性将会对开发者及 C++ 生态产生不小影响,特别是像协程这种巨大的变化。

同时,在此次会议期间,委员会还通过了 C++ 23 计划,其中包括优先考虑模块化标准库、对协程、执行程序和网络的库支持。

更加具体的内容可以查看原帖:

https://www.reddit.com/r/cpp/comments/f47x4o/202002_prague_iso_c_committee_trip_report_c20_is

展开阅读全文
23 收藏
分享
加载中
精彩评论
某些人不愿意学习C++便指望其退出历史舞台,然而实际情况是:C++没有替代C,Rust也没有替代C++
2020-02-16 12:38
36
举报
“老板,你的面好咸,是不是盐放多了?”-“不多,不多,我再给你加勺辣椒”-“我是说你盐放多了,你怎么还往里面加料?”-“快吃,快吃,我又想加孜然了”-“你TM... ...”
2020-02-17 11:36
25
举报
“老板,我想面里放鲜酱油”,“我觉得放鲜酱油不好吃”;“那隔壁桌有人就放了鲜酱油啊”,“你再等等我给你放超级无敌蜜汁酱油”;“我还想放辣油,前面那桌就放了”,“你再等等我给你准备82年的老干妈”;“我不想要香菜,人家就没放”,“不行,放都放好了,不能去掉了,不吃滚”。
2020-02-17 12:54
13
举报
在C++11出来的时候,就兴冲冲地买书看,结果之后好像没再用C++写过代码。真是汗颜。所以这次决定,不再买任何C++的书,专心学RUST,而一些小应用为了不浪费生命,就用PYTHON先处理。
2020-02-16 10:50
9
举报
希望qt尽快支持C++20,这样写代码就容易多了,不用考虑移植的类库
2020-02-23 09:19
8
举报
最新评论 (80)
期待
2020-08-04 23:43
0
回复
举报
能不能别折腾语言了?折腾点库行不行?
2020-02-29 14:04
1
回复
举报
其他的不说,Modules长远来看还是很有必要的,短时间内C++不可能被淘汰,人家Unreal、Unity和CryEngine还有Adobe全家桶都是建立在C++上的
2020-04-05 16:12
0
回复
举报
卑职用了10年C++,C++有了module之后我有个疑惑:
module能不能完全替代header only?

先不说增加编译速度的问题。
我对“非header only”的库简直深恶痛绝。
第一:因为非header only,所以就得编译,这时你就得看这个库的编译说明,编译完后,当总项目编译选项发生变化了,这个库你又得重新编译,有的库光看编译说明就够你喝一壶的。
第二:你可以选择把库中的cpp文件添加到项目中,但当cpp文件的目录结构非常多非常复杂时,这个办法几乎没有可操作性。
如果说header only的库增加了编译时间,我宁可选择增加编译时间去喝口茶,也不要搞那么多复杂的操作步骤,其实这个过程对C++新手尤其不友好,真是的把C++门槛搞复杂了。

所以我想问一下:有了module之后,库中(比如写个开源库之类)还有没有cpp文件,如果有的话,可不可以类似header only一样,直接import就行了,不用管库里的cpp文件了,不用再单独编译了,也不用再把cpp文件添加到项目中了?
2020-02-28 17:07
0
回复
举报
应该可以,也许vcpkg很快就可以跟Module完美结合。
现在比较麻烦的事情是,*nix的软件管理器顺带管理着各种各样的库,不知道到时候会不会出现冲突问题
2020-02-28 19:42
1
回复
举报
QTUM是怎么回事
2020-03-02 02:47
0
回复
举报
Cpp forever
2020-02-25 13:39
2
回复
举报
用C11吧,感觉这个真的比较完善
2020-02-25 11:58
0
回复
举报
最值得期待的Modules。
有了Modules后,才有可能构建C++版本的maven或者javascript的npm这些包管理工具,现在慢慢云编码了。
2020-02-24 16:53
3
回复
举报
同期待modules,就是不知道猴年马月才能用上。
2020-02-25 10:10
0
回复
举报
C++在那个都用C的时代确实做出了贡献,但是时候忘记它了,需要记住一本比自己头还厚的注意事项才能开发出不至于Bug连连的应用,这样的语言够你学一辈子。然而我只想学一阵子,用一辈子。Rust 欢迎你!
2020-02-24 09:43
2
回复
举报
C++11买了5年了,每次翻开都感觉困了
2020-02-23 12:28
0
回复
举报
希望qt尽快支持C++20,这样写代码就容易多了,不用考虑移植的类库
2020-02-23 09:19
8
回复
举报
确实
2020-02-23 15:59
2
回复
举报
您好,请问协程是怎么实现的
2020-02-22 23:39
0
回复
举报
更多评论
80 评论
23 收藏
分享
返回顶部
顶部