首页 > 编程知识 正文

三种命名规则之匈牙利命名规则是什么,匈牙利命名法规则

时间:2023-05-05 09:26:32 阅读:251285 作者:3338

三种命名规则之-----匈牙利命名规则

匈牙利命名法是微软推广的一种关于变量、函数、对象、前缀、宏定义等各种类型的符号的命名规范。匈牙利命名法的主要思想是:在变量和函数名中加入前缀以增进人们对程序的理解。

匈牙利命名法关键是:标识符的名字以一个或者多个小写字母开头作为前缀;前缀之后的是首字母大写的一个单词或多个单词组合,该单词要指明变量的用途。

前缀类型描述aArray数组bBOOL (int)byUnsigned Char (Byte)无符号字(字节)cChar字符(字节)cbCount of bytes字节数crColor reference value颜色(参考)值cxCount of x (Short)x的集合(短整数)dwDWORD(unsigned long)双字(无符号长整数)fFlags (usually multiple bit values)标志(一般是有多位的数值)fnFunction函数g_global全局的hHandle句柄iInteger整数lLong长整数lpLong pointer长指针m_Data member of a class一个类的数据成员nShort int短整数pPointer指针sString字符串szZero terminated String以0结尾的字符串tmText metric文本规则uUnsigned int无符号整数ulUnsigned long (ULONG)无符号长整数wWORD (unsigned short)无符号短整数x,yx, y coordinates (short)坐标值/短整数vvoid空

有关项目的全局变量用g_开始,类成员变量用m_,局部变量若函数较大则可考虑用l_用以显示说明其是局部变量。

前缀类型例子g_全局变量g_ServersC类或者结构体CDocument,CPrintInfom_成员变量m_pDoc,m_nCustomers

|VC常用前缀列表:

前缀类型描述例子chchar8位字符chGradechTCHAR16位UNICODE类型字符chNamebBOOL布尔变量bEnablednint整型(其大小由操作系统决定)nLengthnUINT无符号整型(其大小由操作系统决定)nLengthwWORD16位无符号整型wPoslLONG32位有符号整型lOffsetdwDWORD32位无符号整型dwRangep*Ambient memory model pointer 内存模块指针,指针变量pDoclpFAR*长指针lpDoclpszLPSTR32位字符串指针lpszNamelpszLPCSTR2位常量字符串指针lpszNamelpszLPCTSTR32位UNICODE类型常量指针lpszNamehhandleWindows对象句柄hWndlpfn(*fn)()回调函数指针 Callback Far pointer to CALLBACK functionlpfnAbort

可是在不论什么情况下,都硬性规定使用匈牙利命名法是迂腐的。尤其是 Unix 编程,在使用没有变量名、keyword自己主动补齐功能的编辑器,如 vi 下,去敲入大写和小写混合的变量名是痛苦的。事实上仅仅要注意两个原则:1) 含义清晰,不易混淆; 2) 不和其他模块、系统API的命名空间相冲突就可以。
1.有意识的为变量名、宏名加上本模块的keyword,就不至于和其他模块、系统API的命名空间相冲突;比如: 宏的名称过短,如:DEBUG; 或_DEBUG,非常可能和别的模块,系统模块相冲突;
2.局部变量尤其是循环变量外,使用约定俗成的 i,j,k ,没有问题;
3.宏、常量、枚举enum,所实用大写字母;
4.全局变量加上前缀 “g”,后面跟上首字母大写的单词;

创建边缘节点 边缘计算虚拟机 UEC-VM

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。