据我所知,今年应该接受标准。那么,它会是c ++ 11吗?
答案 0 :(得分:11)
[ED:自从提出这个问题以来,C ++标准已经发布了。在我的回答中,我已经将过去时态改为现在时,并对自释放以来澄清的事情进行了详细阐述。]
根据标准的语言名称是C ++。为了区别于标准的其他版本,它有时称为C ++ 11,但这不是它的正式名称。以前的版本通常被称为C ++ 03或C ++ 98,但在StackOverflow上的转换中,“C ++”本身通常意味着C ++的当前版本,无论发生什么情况。
C ++ 0x只是一个占位符标识符,用于在发布之前引用标准的预发布版本,以便将其与其他版本区分开来。今天我们有一个新版本正在讨论;该版本目前被称为C ++ 1y。
关于0x部分,这是Bjarne Stroustrup所说的:
新标准很可能被称为C ++ 11,但即使是一个较小的bureacratic延迟也可能成为C ++ 12。就个人而言,我更喜欢普通的C ++,只有当我需要将它与以前的C ++版本区分开来时才使用年份标记,例如ARM C ++,C ++ 98和C ++ 03。现在,我倾向于约定,仍然使用C ++ 0x作为下一个版本。将'x'视为十六进制。
在SO上发帖时,通常称为C ++ 11。当只使用C ++标签而没有任何消歧(例如C ++ 11或C ++ 03标签)时,会引起一些关于C ++标准版本的混淆,但通常认为C ++标签是指到目前的版本。在撰写本文时,那是C ++ 11。
答案 1 :(得分:3)
它已被批准!官方出版物需要一些时间,但在今年年底之前仍应该很好。我们现在可以开始称它为 C ++ 11 。
http://herbsutter.com/2011/08/12/we-have-an-international-standard-c0x-is-unanimously-approved/
编辑: Herb Sutter on 2011-10-10宣布新的ISO标准已发布。 ISO Press Release可以这样说:
ISO / IEC 14882:2011定义了编程语言并指定 实施要求。也称为C ++ 11,这就是 自1998年以来该标准的第一次重大修订。
答案 2 :(得分:2)
最后两个标准的名称为C++98
和C++03
,因此可以假设这个标准为"C++XX".replace("XX", YearAccepted)
。