对于我来说,这是一个最最容易被问到的问题。它可能是被问到的次数最多的问题。让人吃惊 的是,C++0x就像一种新的编程语言:跟以前旧的C++不同,C++0x的各个部分被更好地组合在一起,并且我找到了一种更加自然的高层次的编程方式, 而且同样有很好的效率。如果你仅仅是将C++当作更好的C,或者是一种面向对象语言,那么你将错过其中非常精彩和关键的东西。C++0x中的抽象机制将比 以前更加灵活,并且更加经济实惠。就像古老的“咒语”一样:如果你的头脑中有一个想法或者对象,想要在程序中直接对其进行表现,那么,你需要对现实世界中 的对象进行建模,并在代码中对其进行抽象。现在这一过程更加容易了:你的想法将直接对应成为枚举、对象、类(例如,对默认值进行控制)、类的继承(例如, 继承的构造函数)、模板、别名、异常、循环、线程等。这将远远好于以前那种简单的“以一双鞋适应所有脚”的抽象机制。
我的理想是,使用编程语言的各个功能来帮助程序员从另外一个角度思考系统的
设计和实现。我认为C++0x可以做到这一点。并且,不仅仅是为了让C++程序员可以做到,还包括更多的习惯于其它编程语言的,在更广泛的领域内进行系统编程的程序员都可以做到这一点。
换句话说,我依然是一个乐观主义者。
更多C++0x FAQ主题,尽在