让自己习惯c++
条款01:视c++为一个语言联邦
C、Obeject—Oriented C++、Template C++、STL。
C++高级编程守则视状况而变化,取决于使用的C++的哪一部分。
条款02:尽量以const、enum、inline替换#define(即宁可以编译器替换预处理器)
对于单纯常量,最好以const对象或enmus代替#define。
对于形似函数的宏(macros),最好改用inline函数替换#define。
条款03:尽可能使用const
将某些东西声明为const可帮助编译器探测出错误用法。const可被施加于任何作用域内的对象、函数参数、函数返类型和成员函数本体。
编译器强制实施bitwise constness,但编写程序时应该使用“概念上的常量性”。
当const和non-const成员函数有着实质等价的实现时,令non-const版本调用const版本可避免代码重复。