ISO C++委员会已经在夏威夷召开了冬季会议,以便最后一次会议批准即将到来的C++ 20对C++程序设计语言的修订。
在本周的会议上,C++ 20的最后一个特性被考虑,而在下一次的夏季会议上,将处理一些遗留问题,然后将C++ 20提交国际评论投票。
之前讨论过的两个正在考虑的C++ 20特性正式获得批准:模块和协同程序。C++模块是C++头文件的替代品,它使使用软件库更简单,并提供更好的编译时可伸缩性,并避免编译器的预处理器行为的各种缺点。协同程序概念类似于其他编程语言的功能,用于非抢占式多任务处理,并且已批准的C++协同程序状态类似于LLVM CLAN中的实验支持(事实上,它们现在已经启用了-std=c++2a开关)。
在本周的会议上,他们还采用了并行STL算法的新矢量化策略,添加了polymorphic_allocator,std::span更改以及其他较小的工作。
这些最新的变化是在其他先前批准的添加之上,包括C++概念、指定的初始化器、范围、修改的内存模型、三路比较运算符、特征测试宏等等。
关于C++ 20的最新消息的更多细节可以通过Herb Sutter的这次旅行报告找到。
对于那些对GCC编译器中当前C++ 20状态感到疑惑的人来说,可以看到matrix状态以及Clang状态。
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址:https://www.linuxidc.com/Linux/2019-02/157067.htm
