函数变量命名的一些方法

原创 2011年01月21日 18:31:00

变量的函数命名规则,一般有这么几种:

1. 帕斯卡规则(pascal ),如 Windows Api 的命名规则(CreateFile/GetDiskFreeSpaceEx),Java 类名

2. 骆驼规则(camel),如Java方法名(readByte)

3. 下划线分隔单词规则,如C++标准库(lower_bound/equal_range)

4. 小写无分隔,如unix(posix)的很多函数名(getpagesize),但这类大部分使用缩写(mmap/sysconf)

5. 帕斯卡规则再加下划线分隔,ACE使用这种规则(ACE_Event_Handler )

6. 全部大写再加下划线分隔,如C 语言的宏名(BOOST_CURRENT_FUNCTION/BOOST_STATIC_CONSTANT)

7. 全部大写,只在类别后面用用下划线分隔,如Windows 中的消息名(WM_ACTIVATETOPLEVEL)

8. 全部大写无分隔,如Windows中的结构名

9.匈牙利命名法则,如Windows变量名

这几种规则,前3种被大家看好,以下就举一些反例:

1. 单词的分界在视觉上感觉不舒服,主要是以f/l/d 作为分界时(GlobalAlloc,ReadFile),和下一个单词的首字母大写有些混淆

2.的缺点跟1一样

3. 在名称比较短时还行,不过这类名称一般也的确 比较短。下划线分隔,有时略显啰嗦,如getpage,就get_page,来得简明舒服一些

下面是我认为比较好的一套命名规则:

宏名:全部大写,只在类别后面用用下划线分隔,如(BOOST_CURRENT_FUNCTION/BOOST_STATIC_CONSTANT)

局部变量名:骆驼规则和简单变量,如(appName,i)

全局变量名:骆驼规则加 global前缀,如(globalProductName)

自定义类型名:下划线分隔单词规则加_t后缀,如(typedef enum error_e error_t;)

函数名:下划线分隔单词规则,如(lower_bound/equal_range)

相关文章推荐

keil中函数变量定位方法

函数绝对定位方法: 将链接方式从LX51改回BL51,然后再BL51 Locate中的Code框中写入: ?PR?_DELAY?DELAY(0x8000) 其中,前面那个_DELAY是指函数名叫...

java反射,获取类的方法,成员变量,构造函数信息

package com.office;import java.lang.reflect.Constructor; import java.lang.reflect.Field; import java...

c++函数参数传递效率比较,初始化的全局变量方法果然是最快的,而堆方式最慢.

int   b2=0;//全局初始化区  int  b3;  // 全局未初始化区void test(int* b){//传指针 500ms-520;如果是在堆区530-700ms (*b)++...

(vc)全局变量和全局函数便于管理的定义方法

1、添加一个没有基类的新类,设类名起为CPublic,姑且称之为公用类   单击“Insert”菜单下的“New Class”命令,选择“Class type”为“Generic Class”,...

C++静态成员变量和静态成员函数的使用方法总结

一.静态成员变量: 类体中的数据成员的声明前加上static关键字,该数据成员就成为了该类的静态数据成员。和其他数据成员一样,静态数据成员也遵守public/protected/private访问规则...

java反射机制 以及通过反射获得类的变量字段,方法,构造函数

反射机制 首先获得类模板的方式有三种: 1. Class cls=对象名.getClass();//使用这种方式获取类模板有局限性:必须现有对象才能得到类模板对象 2.Class cls=C...

(struct)结构体变量作为函数参数调用的方法小结

结构体变量作为函数参数传递的3种方法 将一个结构体变量中的数据传递给另一个函数,有下列3种方法: 用结构体变量名作参数。一般较少用这种方法。 用指向结构体变量的指针作实参,将结构体变量的地址传给形参...
  • tham_
  • tham_
  • 2015年04月29日 19:37
  • 18474

html调用js变量和函数的几个方法

var RestID = 2;//javascript变量 function a() {//javascript函数 window.open("showNews.aspx?id= " + R...

asp.net中前台JavaScript库调用后台C#变量和有参函数方法

最近在做项目时,遇到了js库里调用后台的变量和函数的问题,一开始不知道咋办,google了很多。 1.封装成JavaScript库,其中调用后台C#变量:      网上有三种基本方法:  方法一:1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:函数变量命名的一些方法
举报原因:
原因补充:

(最多只允许输入30个字)