- 被声明为explicit的构造函数禁止编译器执行隐式类型转换,除非有好理由允许构造函数被用于隐式类型转换,否则把它声明为explicit。
- 拷贝构造操作与拷贝赋值操作。(对象之前是否被定义)
- Pass-by-value与Pass-by-reference。对于用户自定义类型,Pass-by-reference-const往往是比较好的选择。
- 条款01:视C++为一个语言联邦(View C++ as a federation of languages)
C++并不是一个带有一组守则的一体语言;它是从四个次语言组成的联邦政府,每个次语言有自己的规约。
- C (以C为基础的C++)
- Object-Oriented C++ (C with Classes 面向对象,封装、继承、多态,构造、析构、虚函数等特性)
- Template C++ (泛型编程、模板元)
- STL (标准程序库,分配器、容器、迭代器、算法、适配器、仿函数)
C++高效编程守则视状况而变化,取决于你用C++的哪一部分。
- 条款02:尽量以const,enum,inline替换#define (Prefer consts,enums,and inlines to #define)
Effective C++
原文:https://www.cnblogs.com/iamyuxing/p/12084352.html