C++0x 何时发布,何时成为事实上的标准?

发布于 2024-10-09 17:03:13 字数 280 浏览 0 评论 0原文

我了解到 C++0x 可能会在 2010 年 3 月正式发布,并将在 2011 年底成为 ISO 标准。
这确实是最有可能发生的情况,还是有一次又一次推迟的风险?

我还想知道它什么时候会成为事实上的标准:什么时候会有人(包括最流行的软件,如 Qt、Windows 库等)使用它而不是使用 C++03?
我想流行的库切换到 C++0x 并不那么容易,因为我不认为它们会强迫所有用户升级编译器。

我希望这个问题不要被认为是一个主观问题;我不认为这是因为答案可以(并且应该)基于切换到 C++03 的经验

I read that C++0x is likely to be officially released during march 2010, and that it will become an ISO standard for the end of 2011.
Is this really the most likely scenario, or does it risk to be postponed again and again?

I'm also wondering when will it become the de-facto standard: when will anyone (including the most popular piece of software, like Qt, windows libraries etc) use it instead of using C++03?
I guess it's not so easy for the popular libraries to switch to C++0x, since I don't think they will force all their users to upgrade compilers.

I hope this question is not considered a subjective one; I don't think it is since answers can (and should) be based on the experience of switching to C++03

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

呆萌少年 2024-10-16 17:03:13

无论好坏,有关“事实上的标准”的任何事情至少在两个方面都是主观的。一是编译器包含足够的 C++0x 功能以符合实现 C++0x 的条件,二是当这些功能的使用被“接受”时。大多数 C++ 编译器已经包含至少一些重要的 C++0x 功能,并且相当数量的代码(例如,Boost 最近版本的部分)可以在存在时使用它们。其他功能的可用程度要低得多,并且/或者很少有(实用的)代码可以使用它们。

该标准有点像目前正在进行 beta 测试的软件(好吧,官方的“beta 测试”期已经结束)。基本上,已知的错误正在修复,但没有添加新功能。在某种程度上,它现在是由时间表驱动的——也就是说,在没有发现重大问题的情况下,他们会在发布日期之前修复尽可能多的错误,当时间耗尽时,它就会被发布。与(大型)软件包一样,最终确定的时间和公开发布的时间之间也存在延迟。这比软件的标准要长,但也不太相关——一旦最终确定,编译器供应商将有副本可供使用,而最终的发布标记并不意味着那么多。

For better or worse, anything about a "de facto standard" is subjective on at least two fronts. One is when a compiler includes enough C++0x features to qualify as implementing C++0x, and the second is when use of those became "accepted". Most C++ compilers already include at least a few significant C++0x features, and a fair amount of code (e.g., parts of recent releases of Boost) can make use of them when present. Other features are much less available and/or there's little (practical) code that makes use of them.

The standard is a bit like a piece of software that's currently in beta testing (well, the official "beta test" period is over). Basically, known bugs are being fixed, but no new features are being added. To an extent, it's now being driven by schedule -- i.e., short of a major problem being found, they'll fix as many bugs as possible before the release date, and when time runs out, it'll be released. Like (large) software packages, there's also a delay between the time it's finalized and the time it's publicly released. That's longer than the norm with software, but also less relevant -- once it's finalized, the compiler vendors will have copies to work to, and the final stamp of release doesn't mean all that much.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文