More Effective C++
时间:2010-12-20 来源:jxsdrjnuit
一:基础议题:
1:指针与引用的区别。
2:尽量使用C++风格的类型转换。
3:不要对数组使用多态。
4:避免误用的缺省构造函数。
二:运算符:
1:谨慎定义类型转换函数。
2:自增,自减。
3:不要重载“&&”,“||”,“,”。
4:理解各种不同含义的new 和delete。
三:异常:
1:使用析构函数防止资源泄漏。
2:在构造函数中防止资源泄漏。
3:禁止异常信息传递到析构函数外。
4:理解抛出一个异常与传递一个参数或调用一个虚函数间的差异。
5:通过应用铺获异常。
6:审慎使用异常规格。
7:了解异常处理的系统开销。
四:1:牢记80-20规则。
2:考虑使用懒惰计算法。
3:。。。。
4:理解临时对象的来源。
5:协助完成返回值优化。
6:通过重载避免隐试类型的转换。
7:考虑用运算符的赋值形式(OP=)取代其单独形式(OP)。
8:考虑变更程序库:
9:理解虚拟函数,多重继承,虚基类和RTTI所需的代价。
五:技巧:
1:将构造函数和非成员函数虚拟化。
2:限制某个类所能产生的对象数量。
3:要求或禁止在堆中产生对象。
4:smart指针。
5:引用计数。
6:代理类。
7:让函数更具一个以上的对象拉力决定怎么虚拟。
六:杂项:
1:将非尾端类设计为抽象类。
2:如何在同一程序中混合使用C++和C。
3:让自己习惯使用标准的C++语言。
相关阅读 更多 +