【问题标题】:ISO C++ standard draftISO C++ 标准草案
【发布时间】:2011-08-30 05:12:40
【问题描述】:

在 ISO 标准 C++ 中:最新的工作草案是n3291,它不公开。但是n3290 可用。截至 2 月,草稿为 n3242。我现在可以知道.. 哪个草案更适合成为最终草案?因为n3242n3290相比有很多不同?

在此链接中,他们还给出了 ..:当前工作草案为 n3242 ? (为什么不n3290

http://www.open-std.org/jtc1/sc22/wg21/

http://en.wikipedia.org/wiki/C%2B%2B0x

请告诉我哪个草案是正确的(直到最终草案发布)?

【问题讨论】:

标签: c++ standards c++11


【解决方案1】:

有一段时间,n3291 可以从明显的 URL 获得(只需在 Wikipedia 链接中搜索 n3242 并将其替换为 n3291)。但我猜有人认为这与最终版本太接近了,因此无法再访问。

因此 Wikipedia 没有链接到它,因为没有可链接的内容。

我确实在 n3291 可用时将其藏起来了。我没有做详尽的搜索,但似乎没有实质性的变化;只有澄清。例如,n3242 的第 1.8 (6) 节内容如下:

除非对象是位域或零基类子对象 大小,该对象的地址是它的第一个字节的地址 占据。既不是位域也不是基础的两个不同对象 大小为零的类子对象应具有不同的地址。

虽然 n3291 的同一部分内容如下:

除非对象是位域或零基类子对象 大小,该对象的地址是它的第一个字节的地址 占据。不是位域的两个对象可能具有相同的 如果一个是另一个的子对象或至少一个是 零大小的基类子对象,它们属于不同的类型; 否则,它们将具有不同的地址。

(n3291 使用红色删除线和带下划线的蓝色文本来突出显示与 n3242 相比的更改,因此不难找到此示例。)

如果有人能提出令人信服的论点,表明重新发布 n3291 对我来说是合法的,我将很乐意提供它。我当然不必输入任何密码,甚至无需点击协议即可下载...

[更新:在我这个答案的第一个版本中,当我的意思是“n3291”时,我写了“n3290”。 “工作草案”的数量比“最终版本”的数量多,这有点奇怪。不管怎样,有一段时间免费提供的是 n3291。]

[更新 2:N3337next C++ 标准的初始草案,它与 C++11 最终标准非常相似。见:

Do section numbers differ between the C++11 standard and the gratis draft N3337?

因此,您可以选择免费草稿;官方标准之前的最后一个(N3242),之后的第一个(N3337)。所有似乎都使用相同的段落编号。]

【讨论】:

  • @Nemo : 我可以知道你的.. 结论最后... :) n3290 是最好的一个还是 n3242 ?
  • n3291 只是 n3242 的更新版本。正如我所说,我相信所有的变化都是微小的。 (就像我给出的示例,或者像在 <atomic> 标头中的所有函数中添加“noexcept”。)n3242 完全适用于 IMO,除了最晦涩的目的。
  • @user - N3290 新标准(省去一些拼写检查和排版)。
  • @nemo - 考虑到原始发布者对文档进行了密码保护,我猜他们确实希望其他人发布它。 ISO 将在离开印刷厂后立即提供他们的版本。马上就要来了!
  • 最重要的实用点似乎是:n3242中对段落编号的引用是否符合实际标准?似乎答案是“是”。不错!
【解决方案2】:

N3290 和 N3291 的区别在于扉页。 N3291 说“工作草案”;另一个没有。除此之外,他们说同样的话。

遗憾的是,由于 ISO 问题,两者都无法在线获得。最终标准可能只包含与 N3290 相比相当小的变化,因此它们太接近最终标准而无法发布。特别是考虑到 N3291 被选为 FDIS。

【讨论】:

  • @user751747:他们需要什么?除非您实际上拥有 N3290/91,否则您可能不会得到它。所以 N3242 是你能买到的最好的。
猜你喜欢
  • 2015-05-20
  • 1970-01-01
  • 2012-12-20
  • 2013-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多