条款01: 视C++为一个语言联邦
C++并不是一个带有一组守则的一体语言,而是从四个次语言组成,每个层次语言具有不同的高效编程策略。
当从某个次语言切换到另一个,遵守的规约发生变化。例如对内置类型pass-by-value通常比pass-by-reference高效,由于用户自定义构造函数和析构函数存在,pass-by-reference-to-const往往更好。
1. C: c++以C为基础,其中区块,语句,预处理器,内置数据类型,数组,指针都来自C,遵守C的守则
2. 面向对象: class(构造,析构),封装,继承,多态,virtual函数(动态绑定)
3. 模板编程: 泛型编程的部分,带来崭新的编程范型,也就是所谓的模板元编程
4. STL: 模板程序库,对容器,迭代器,算法以及函数对象的规则有极佳的紧密配合与协调

浙公网安备 33010602011771号