C++诤言

来源:互联网 发布:批量修图软件 编辑:程序博客网 时间:2024/06/07 01:44


  • 避免使用C风格的动态内存管理,应使用C++风格的new、delete风格,并把内存管理交给一个合适的对象,比如说智能指针。

  • 避免在头文件定义非在线的函数,这将可能引起链接困难,同时也会引起读者理解困难。

  • C++中几乎不需要宏。用const或enum定义明显的常量,用inline避免函数调用的额外开销,用template去刻画一族函数或都类型,用namespace去避免名字冲突。

  • 不要在你需要变量之前去声明它,以保证你能立即对它进行初始化。声明可以出现在能出现语句的所有位置,也可以出现在 for 语句的初始化部分,也可以出现在 if 语句条件中。

  • 不要用mallocnew运算符能把同样的事做得更好。至于relloc,请尝试使用vector

  • 避免使用void、指针算术、联合和强制,除了在某些函数或类的实现的深层之外。在大多分情况,强制是设计错误的指示器。如果你必须使用某个显式的类型转换,请设法用一个“新的强制”,设法写出一个描述你想做的事情的更精确的语句。

  • 尽量少用数组与C风格的字符串。与传统的C风格相比,使用C++标准库的stringvector常常可以简化设计。

  • 确定你需要哪些模块;将程序分为一些模块,使数据隐藏于模块之中。

  • 不要像重新发明车轮一样企图做每一件事;去使用库!

  • 不要相信奇迹;要理解你的库能做什么,它们如何做,它们做的时候需要多大的代价。

  • 0 0