TR2 是否会在 C++17 发布

Is TR2 Going to be Released in C++17?

本文关键字:C++17 发布 是否 TR2      更新时间:2023-10-16

TR2中有很多甜蜜的东西。那会在 17 C++吗?

据我了解,TR1 是在 2005 年完成的,必须等到 C++11 才能标准化。但我也明白TR2已经完成了?

我指向 C++17 的链接没有提到任何关于 TR2 的内容,但我希望......

> 也许吧。

TR(以及现在的技术规范)的要点是允许某些东西独立于标准迭代过程而成熟。 他们可以发布一个 TS,看看它是如何工作的,看看在实现和/或使用该功能时是否存在任何问题,如果一切正常,他们可以将其"折叠"到完整的标准中。

每个 TS 都根据其自身的优点进行考虑,以查看它是否会被折叠到下一个标准中。

有关技术规范工作组的当前状态,请参阅 http://isocpp.org/std/status(感谢@BenjaminLindley)。

其中任何一个,如果在2017年之前完成,都可以纳入标准。 他们不太可能都是。

我们的目标是我们可以更早地获得std::experimental功能来玩(如果我们愿意接受脚下的变化,则可以使用),同时将这些功能添加到std之后的遗憾和规格更改更少。 将主线标准与每个副项目分离并允许它们独立发展可能还有巨大的组织开销优势。

技术报告或现在的技术规范的目的是从实现者和用户那里获得实现经验和反馈,以更好地评估功能对标准化的适用性。人们需要一个水晶球来知道特定的TS是否会包含在未来的标准中,以及这可能是哪个未来的标准。

图书馆基础 TS 的第 1 版似乎已在 2014 年 11 月的委员会会议上通过了最终投票,目前正在起草第 2 版以纳入反馈和新提案。这意味着它越来越接近实现者和行业用户满意的东西,版本 1 现在是一个不可变的规范,实施者可以选择遵守。更高版本和更高标准仍然很有可能以与版本 1 不兼容的方式进行更改。

这是 TR2 功能的列表(来自您的维基百科链接) - 以及我的评论

  • 线程 - 包含在 C++11 中
  • Asio C++ 库 - 正在考虑将其作为未来的C++标准
  • 信号/插槽 - 目前没有操作(我知道)
  • 文件系统库 - 文件系统技术规范
  • 提升任何库 - 库基础技术规范的一部分
  • 词汇转换库 - 目前没有操作(我知道)
  • 新的字符串算法 - 目前没有操作(我知道)
  • 迈向 TR2 中数字库代数属性的更完整的分类 - 目前没有操作(据我所知)
  • 将异构比较查找添加到 TR2 的关联容器 - * 包含在 C++14* 中