C
区块、语句、预处理器、内置数据类型、数组、指针
局限:没有模板,没有异常,没有重载…。
Object-Oriented C++
classes,封装,继承,多态,virtual函数(动态绑定)
Template C++
编程泛型(模板元编程)
STL
template程序库
容器、迭代器、算法以及函数对象
例:对于内置语言类型而言pass by value通常 pass by reference高效,当从C移往C++,由于构造函数和析构函数的存在,pass by refreence to const往往更好。运用Template C++时尤其如此,然而一旦跨入STL就会知道,pass by value守则再次适用。
C++不是一个带有一组守则的一体语言;他是从四个次语言组成的联邦政府。
C++高效编程守则视状况而变化,取决于你使用C++的哪一部分。