1,C++里几乎不需要用到宏,用const火enum定义明显的常量。用inline避免函数的额外开销,用template去刻画一族函数或者类型,用namespace去避免名字冲突。类也可以。
2,不要在你需要之前申明它,什么时候用什么时候申明(当年从C++转C的时候吃了老苦了)。
3,不要用malloc(),new可以做的很好,对于realloc(),可以试一试vector。
4,试着避免void*,指针算术,联合和强制。如果你必须使用某个显式的类型转换,设法去用一个“新的强制”。
5,尽量使用C++标准库。