1. 尽量用编译器而不用预处理
1) const Vs. #define
#define被预处理,所以定义的名字不会加入到符号列表中。在编译时出错和符号调试器中,无法确定所代表的具体含义。
const的作用更大,可以定义指针常量,某个类的常量等等。
2) inline Vs. #define
inlene可以实现宏的效率,而且有可预计的行为和类型安全等优点。
2. 使用<iostream>代替<stdio.h>
scanf和printf很轻巧,很高效,但不是类型安全的,而且没有扩展性。
3. new, delete Vs. malloc, free
问题:malloc和free不知道构造函数和析构函数。
4. 尽量使用c++风格的注释
例外:#define light_speedp 3e8 // m/sec (in a vacuum)


