Effective C++

Shifting from C to C++:

1 - 尽量以const和inline取代#define;

2 - 尽量以<iostream>取代<stdio.h>;

3 - 尽量以new和delete取代malloc和free;

4 - 尽量使用C++风格的注释形式;

Memory Management:

5 - 使用相同形式的new和delete;

Constructors, Destructors and Assignment Operetors:

11 - 如果class内动态配置有内存,请为此class声明一个copy constructor和一个assignment运算符;

12 - 在constructor中尽量以initialization动作取代assignment动作;

13 - initialization list中的members初始化次序应该和其在class内的声明次序相同;

14 - 总是让base class拥有virtual destructor;

Classes and Functions: Design and Declaration:

27 - 如果不想使用编译器暗自产生的member functions,就应该明白拒绝它(设为private,并且不定义具体内容);

Miscellany:

47 - 使用non-local static objects之前先确定它已有初值;

48 - 不要对编译器的警告信息视而不见;

49 - 尽量让自己熟悉C++标准程序库;

50 - 加强自己对C++的了解。

 

posted @ 2012-05-28 17:45  洛基杨  阅读(191)  评论(0)    收藏  举报