VS2022官宣C++ 20标准库完整版本释出
今天我们非常高兴地宣布,稳定版本的C++20标准库(STL)现已在VS2022 v17.2和VS2019 v16.11.14这两个版本可用。
特别是,这个版本包括了C++标准委员会批准的几项针对C++20标准库的缺陷报告 (DR) 提案,这些提案最近在 2021 年 10 月对 format 和 ranges 进行了大量的设计修改。
现在,你可以在生产环境中以二进制兼容的方式使用完整的C++20功能列表,并与其他受支持的语言版本模式兼容。
C++20完整版本…再一次大忽悠?
经常看我们文章的读者应该知道,在不久之前,我们宣布过MSVC已经为Visual Studio v16.11.0完成了C++20中的所有功能,并且我们添加了/std:c++20选项以表明大多数C++20功能已稳定并可以在生产环境中使用。
那个时候,我们提到,在/std:c++20下提供一些库功能(format,ranges以及chrono)会延迟一段时间才能支持,因为我们知道标准委员会正在进行这部分的审议工作。 这些功能继续仅在/std:c++latest 下可用,而标准委员会最终确定了设计修改,然后我们实现了它们。
缺陷报告(Defect Reports)
DR包括对format和ranges这两个头文件的源码和ABI兼容性的修改。自开源以来,围绕STL成长起来的开发者社区一直在 /std:c++latest下的Visual Studio 2022发行版中实现DR,就像它们是C++23功能一样。 我们的计划是,在所有DR完成后,在/std:c++20下提供最终实现版本,然后将该工作反向移植到Visual Studio 2019为尚未迁移的客户完成C++20平滑迁移到Visual Studio 2022。幸运的是,我们实现了Visual Studio 2022 17.2 Preview 2的第一个”小目标”。
考虑到我们必须将来自开发分支的一百个提交合并到16.11发布分支,并在不回归稳定发布版本的情况下让一切正常工作,向后移植工作非常顺利。 我们想办法及时完成了工作,以在 17.2 中完成C++20支持的同时,也发布16.11版本对C++20支持。
总结
不管你接受不接受,C++20还是来了,VS2023还是来了。
订立一个大目标时,一定需要加一个时效性。对于我来说,这个时效性等于从现在的时刻开始,一直到离开这个世界的时间段。
最后
Microsoft Visual C++团队的博客是我非常喜欢的博客之一,里面有很多关于Visual C++的知识和最新开发进展。大浪淘沙,如果你对Visual C++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。
本文来自:《MSVC’s STL Completes /std:c++20》
最近我写了个东西
正如你们所知道的,拓扑梅尔智慧办公平台(Topomel Box)是一款绿色软件,主要面向经常使用电脑的朋友。它提供了各种提升办公效率的小功能,同时操作上尽可能地简单方便。
我想:你值得拥有。
- 下一篇: 说说Shell动画控件的限制
- 上一篇: 为什么不能分配一块全局性的用户模式内存空间?
相关推荐
- 成员函数指针的一些奇怪行为
- Posted on 12月03日
- 谨慎行事,请编写面向阅读的代码
- Posted on 02月22日
- 为什么XP中新开始菜单不使用”个性化菜单”
- Posted on 11月30日
- 深度理解:类前置声明的使用
- Posted on 07月08日
评论已关闭。