【发布时间】:2010-09-18 13:41:59
【问题描述】:
【问题讨论】:
【问题讨论】:
最后一个草案已于几周前于 2011 年火星正式定稿,并将于 2011 年 7 月左右正式发布。新标准的名称为 C++2011:http://herbsutter.com/2011/03/25/we-have-fdis-trip-report-march-2011-c-standards-meeting/
Microsoft C++ 编译器 (VC10) 提供 C++0x 功能(lambda、decltype、auto、r 值引用和 nullptr)。 GCC 提供了一个正在进行的版本,它已经实现了很多特性(参见http://gcc.gnu.org/projects/cxx0x.html)。 Comeau C++ 似乎更高级。 CLang 开始提供一些功能,但暂时不多(见http://clang.llvm.org/cxx_status.html)
因此,在 ISO 管理部门正式验证草案时,主要 c++ 编译器可以使用大部分功能。我猜一些高级功能在几年前仍然无法使用。
【讨论】:
这个委员会草案不太可能成为 FCD。我想说,标准委员会至少还要再开 2 次会议,然后才能提交给 FCD。
我认为 FCD 和实际标准之间存在 1 年的滞后,所以可能是 2011 年(甚至更晚!!!)
【讨论】:
许多免费和商业编译器已经包含对某些 C++0X 功能的支持。
至于标准委员会什么时候真正发布,嗯……
【讨论】:
auto 和本机 lambdas)还没有。 :-(
最近出现了一个新的draft,所以事情正在取得进展。从这个草稿到定稿,应该不超过一年的时间。我应该注意,这个草稿是功能完整的版本;从这里开始,它应该只是修改。然而,我刚刚意识到,从草稿到实际发布的标准的道路是一条很长的路。我将把我对已发布并被接受的标准的估计推迟到 2010 年。
要多久才能完全符合编译器要求?那是一个不同的故事。 GCC 在非库的语言特性上取得了不错的进展(参见list of features they have implemented),但没有提到并发特性方面的进展。我不能说什么时候 MSVC/dinkumware/你可能使用的任何其他编译器将开始实现像 lambda 这样的东西。
Boost 已经实现了 TR1 的大部分内容,而 dinkumware 已经实现了这一切,因此您已经可以开始使用新的库了(但可能不是最终形式)。
【讨论】:
有一些链接 here 讨论 C++0X。
【讨论】:
委员会最近发布了一份委员会草案,该草案将成为最终委员会草案,该草案将成为国际标准最终草案,将成为 ISO 14882:20xx,预计发布日期为 2010 年底。
但是,GCC 4.3 及更高版本实现了越来越大的 C++0x 子集,其他编译器开发人员已经在着手实现(据我所知还没有)。
【讨论】: