Effective C++ T01:视C++为一个语言联邦

将C++视为一个由相关语言组成的联邦并非单一语言。

C++主要的次语言:

1. C

C++仍是以C为基础的。

2. Object-Oriented C++

C++面向对象部分。

3. Template C++

C++的泛型编程部分

4. STL

STL是个template程序库

C高效编程守则视状况而变化,取决于你使用C++的那个次部分。

例如:

内置(C-like)类型而言,pass-by-value 通常比pass-by-reference 高效

当你从C part of C++ 移往 Object-Oriented C++,由于用户自定义构造函数和析构函数的存在,pass-by-reference-to-const 往往更好。

运用Template C++时,不知道所处理的对象的数据类型。

使用STL时,迭代器和函数对象都是在C指针之上塑造出来的,对迭代器和函数对象而言,C的pass-by-value守则再次适用

上一篇:【题解】UVA1464 Traffic Real Time Query System/Acwing398. 交通实时查询系统


下一篇:aop