Chinaunix首页 | 论坛 | 博客
  • 博客访问: 705734
  • 博文数量: 90
  • 博客积分: 3225
  • 博客等级: 少校
  • 技术积分: 1200
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-20 11:04
个人简介

菩提本无树,明镜变非台 本来无一物,何处惹尘埃

文章分类

全部博文(90)

文章存档

2015年(1)

2014年(12)

2013年(15)

2012年(31)

2011年(8)

2010年(23)

分类: C/C++

2010-12-03 11:53:58

  1. 标识符的命名要清晰明了,可以使用完整的单词和大家易于理解的缩写。短的单词可以通过去元音形成缩写,较长的单词可以取单词的头几个字母形成缩写,也可以采用大家基本认同的缩写。例如count写成cnt,block写成blk,length写成len,window写成win,message写成msg,temporary可以写成temp,也可以进一步写成tmp。

  2. 内核风格规定变量、函数和类型采用全小写加下划线的方式命名,常量(宏定义和枚举常量)采用全大写加下划线的方式命名。上面举例的函数名radix_tree_insert、类型名struct radix_tree_root、常量名RADIX_TREE_MAP_SHIFT等。有一种变量命名风格叫匈牙利命名法(Hungarian notation),用变量名的前缀记录变量的类型,例如iCnt、pMsg、lpszBlk等,Linus在[CodingStyle]中毫不客气地讽刺了微软发明的这一风格"Encoding the type of a function into the name (so-called Hungarian notation) is brain damaged - the compiler knows the types anyway and can check those, and it only confuses the programmer. No wonder MicroSoft makes buggy programs."代码风格本来就是一个很有争议的问题,如果你接受本章介绍的内核风格(也是本书所有范例代码的风格),就不要使用大小写混合的变量命名方式[17],更不要使用匈牙利命名法。

  3. 全局变量和全局函数的命名一定要详细,不惜多用几个单词多写几个下划线,例如函数名radix_tree_insert,因为它们在整个项目的许多源文件中都会用到,必须让使用者明确这个变量或函数是干什么用的。局部变量和只在一个源文件中调用的内部函数的命名可以简略一些,但不能太短,不要使用单个字母做变量名,只有一个例外:用i、j、k做循环变量是可以的。

  4. 针对中国程序员的一条特别规定:禁止用汉语拼音作为标识符名称,可读性极差。

阅读(2071) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~