最近在做毕业设计,阅读别人的代码时,发现里面有很多__开头的函数。于是,复习了一遍程序命名规范。
这也是所有想成为优秀程序员的同志们,该了解的基本规则。
1.匈牙利命名规则
变动 前缀 类型
a Array
b Boolean
by Byte
c Char //有符号型字符
cb Char Byte //无符号型字符(没多大用处)
cr ColorRef //颜色参考值
cx,cy Length of x,y (ShortInt) //坐标差(长度)
dw Double Word
fn Function
h Handle
i Integer
m_ Member of a class
n Short Integer
np Near Pointer
p Pointer lp Long Pointer
×(str) s String
sz String with Zero End //以字符 '/0 '结尾的字符串
tm Text //文本内容
w Word
x,y Coordinate //坐标
2.Panorama系统的命名约定
2.1 VC中变量命名时的前缀约定
Array a... //例:CStringArray saText
BOOL b...
UINT n...
int i...
short n...
long l...
WORD w...
DWORD dw...
float f...
char c...
char* psz...
TCHAR* psz...
LPCTSTR lpsz...
CString str...
COLORREF cr...
LPLOGPALETTE lp... (包括LP开头的类型都是这样)
POINT pt...
CPoint pt...
HANDLE h...
HGLOBAL h... (包括H开头的类型都是这样)
说明:
1.如果是指向上述类型的指针,就在上面规范前加 "p " ;
2.如果是指向上述类型的双重指针,就在上面规范前加 "pp " ;
3.如果是类成员变量,则在上面规范前加 "m_ ";
4.全局变量,则在上面规范前加 "g_ ";
5.在类型前加了 "const ",命名约定不变;
所以,__(双下划线)在C++中 的意思是:
对于关键字来讲
没有下划线就是C++标准关键字;
“__”一般用来表示编译器自定义或保留的C++关键字。
对于函数来讲:
没有下划线是C++标准库或STL库中的函数。
“_”一个下划线一般用来表示老式的C函数,或用来区别同名函数
“__”用来区别同名函数
对于值来讲:
“-”一般用来表示宏
“__”一般用来表示常量