过去十年中C++是如何变化的?

Joh*_*yre 19 c++

在过去的十年里,我几乎/很少使用C++,现在看起来我将再次使用它.我很期待它,但不得不怀疑自从我上次使用它以来它是如何改变的.

在过去十年中,是否有任何好的/简短的网页,博客文章,甚至有关C++如何变化的书籍?

请注意,这个问题与语言,工具或有关使用C++的其他信息有关.具体来说,我使用VC++ 2008在Windows中工作.

Mic*_*urr 17

虽然官方标准在过去十年左右没有太大变化,但有几个重要的事情发生了:

  • 虽然它还不是官方标准,但即将推出的新标准(通常称为C++ 0x)即将出现.GCC和MSVC 2010已经纳入了该新标准的重要部分,但我不确定它有多少共同用途.
  • Boost库已经成为一个主要的球员在为语言提供额外的支持-到如此地步,这是对新标准的一个显著的影响
  • "基于模板的"编程技术变得越来越流行,可能超过了旧的"基于继承"的代码重用技术(当你上次查看C++时,这可能已经进行得很好,这取决于你的商店可能在时间).
  • 编译器(尤其是微软)在标准合规方面取得了很大进展

  • @John:Boost是现代C++的重要组成部分.几乎所有严肃的项目都依赖于Boost. (7认同)
  • "几乎所有严肃的项目都依赖于提升?" 有任何数字,或者你只是把它拉出来?不幸的是,我们的客户无法使用提升. (2认同)
  • @DeadMg:"几乎所有严肃的项目都依赖于Boost." - 我不这么认为.很多C++项目都是在Boost不存在的时候开始的 - 并且从未改变为提升.所以也许你是对的,当说"......所有严肃的新项目......". (2认同)

小智 11

最大的变化是C++标准现在在所有主要编译器中都有效.像成员模板这样的东西曾经是不确定的.

  • 好吧,标准库可以. (3认同)

Nem*_*vic 10

语言本身并没有太大变化.然而,最佳实践和习惯做了很多.

我建议您看看Herb Sutter和Andrei Alexandrescu 撰写的" C++编码标准:101规则,指南和最佳实践 "一书,了解现代C++的样子.


the*_*ill 9

我认为最大的变化之一是思维方式:很多人(终于!)意识到模板非常强大并且不需要很慢,并且使用STL和提升比10年前要广泛得多.

  • 也许在未来10年,人们将停止称标准库为"STL". (6认同)