- 变量初始化
- 从未对变量赋值
- 变量值已经过期
- 变量的一部分被赋值,而另一部分没有
- 在声明变量的时候初始化
- 在可能的情况下使用const
- 特别注意计数器和累加器 -> 清零或重置
- 在类的构造函数里初始化类的数据成员
- 检查是否需要重新初始化
- 利用编译器的警告信息
- 检查输入参数的合法性
- 减少作用域的原则
- 在循环开始之前再去初始化该循环里使用的变量
- 直到变量即将被使用是再为其赋值
- 把相关语句放到一起
- 把相关语句提取成单独的子程序
- 根据需要扩展变量的作用域
- 为变量指定单一用途
- 每个变量只用于单一用途
- 使变量具有明确地含义 避免让代码具有隐含含义
- 确保使用了所有已声明的含义
- 命名注意事项
- 完全准备的表达要表达的事务
- 变量名的平均长度在10-16个字符,如果短于,则应该保证所表达的含义足够清晰
- 比如total,sum,max等限定词,应该加在名字最后面
- 非正式命名规则
- 通过大写字母开头区分类型和变量 如: Widget,widget
- 标识全局变量 如统一添加g_开头
- 代码阅读的次数远多于编写的次数,确保所取的名字更易于阅读