代码大全学习笔记——第十一章变量名的力量2

11.4 非正式命名规则

与语言无关的命名规则的指导原则

  1. 区分变量名和子程序名字:变量名和对象名以小写字母开始,子程序名字以大写字母开始
  2. 区分类和对象:
    ① 通过大写字母开头区分类型和变量,如 Widget(类名) widget(变量名);
    ② 通过全部大写区分类型和变量,如 WIDGET(类名) widget(变量名);
    ③ 通过给类型加“t_”前缀区分类型和变量,如 t_Widget(类名) Widget(变量名);
    ④ 通过给变量加“a”前缀区分类型和变量,如 Widget(类名) aWidget(变量名);
    ⑤ 通过对变量采用更明确的名字区分类型和变量,如 Widget(类名) employeeWidget(变量名);
    我个人觉得还是第三种方案比较好,但是不是要把前缀改为后缀,先沿用这种前缀方式吧,比如c语言中t前缀代表结构体,u代表联合体,e代表枚举类型,我自己根据之前的经验提出的一些建议,还希望有阅读到这里的大神能给一些更合理的建议
  3. 标识全局变量:用g来标识
  4. 标识成员变量:用m来标识
  5. 标识类型声明:同第二条的第三点
  6. 标识具名常量:一般用全大写,如果有可能用下划线来分割单词
  7. 标识枚举类型的元素:全部用大写,或者为类型名增加e_或E_前缀,同时为该类型的成员名增加基于特定类型的前缀
  8. 在不能保证输入参数只读的语言里标识只读参数:c语言能够保证,保证的条件就是参数有const修饰

与语言相关的命名规则的指导原则

c语言的命名规则
  1. c和ch是字符变量;
  2. i和j是整数下标;
  3. n表示某物的数量;
  4. p是指针;
  5. s是字符串;
  6. 预处理宏全部大写,这通常也包括typedef;
  7. 变量名和子成名全部小写;
  8. 下划线_作为分隔符
  9. linux或unix风格的c编程规则如上,但开发windows应用的c语言倾向于匈牙利命名法,并在变量名中混合使用大小写**
c++的命名规则
  1. i和j是整数下标;
  2. p是指针;
  3. 常量、typedef和预处理宏全部大写;
  4. 类和其他类型的名字混合大小写;
  5. 变量名和函数名中的第一个单词小写,后续每个单词的首字母大写
  6. 不把下划线用做名字的分隔符,除非用于全部大写的名字以及特定的前缀中;
  7. 与c编程相比,上述规则还远没有形成标准,并且不同的环境也会形成不同的具体规则;

混合语言编程的注意事项

命名规则示例

变量名包含的信息:
  1. 变量的内容
  2. 数据的种类(具名常量、简单变量、用户自动以类型或者类)
  3. 变量的作用域(私有的、类的、包的或者全局的作用域)

代码大全学习笔记——第十一章变量名的力量2_第1张图片代码大全学习笔记——第十一章变量名的力量2_第2张图片

以上只是提供了一些示例规则,不一定全部都按照它的来
个人嵌入式命名总结:
  1. 使用大小写命名法:子程序的命名以大写字母开头,变量的命名以小写字母开头
  2. 全局变量用g前缀修饰,局部静态变量用s前缀修饰
  3. 结构体、联合体和枚举类型的类型用大小写命名,结构体用t前缀修饰,联合体用u前缀修饰,枚举用e前缀修饰
  4. 宏定义和具名常量用大写字母,用下划线分开,原因是宏定义和具名变量都是在编译时被展开的
  5. 目前想到这么多,如果有,后续增加吧

你可能感兴趣的:(学习笔记)