C++一开始只是C加上面向对象的特性,后来当C++逐渐成熟,又增添了许多新的特性以及观念。如异常对函数的结构化带来不同的做法(Item 29),模版(Item 41),以及STL。
*如今C++已经是一种多重范型编程语言,它同时支持面向过程、面向对象、函数形式、泛型形式、元编程形式。
我们应该把C++视为
①C
②面向对象的C++
③模版C++
④STL
以上四种次语言的组合。
C++高效编程的守则应取决于当前正在使用C++的哪个部分。
例如,对内置(C)类型而言值传递比引用传递高效;但对于面向对象的C++(存在用户自定义的构造函数和析构函数)和模版C++来说,使用 pass-by-reference-to-const 往往更好。