如果你有一个大型项目,那么应该提出一个编写代码的标准方式,否则他会混乱不堪。
微软使用一个名为匈牙利编码规范,他使用在微软任何产品内,如果你要使用微软的API,或者你也需要一套类似的编码规范,那么学习一下总是没有错的。
匈牙利符号表示法包括下列命名约定:
- 变量
- 函数
- 类型和常量
- 类
- 参数
| 前缀 | 数据类型(基础类型) |
| c | char(字符) |
| by | BYTE(字节,无符号字符) |
| n | short(短整数和整数,表示一个数) |
| i | int(整数) |
| x,y | short(短整数,通常用于x坐标和y坐标) |
| cx,cy | short(短整数,通常用于表示x和y的长度;c表示计数) |
| b |
BOOL(int) |
| w | UINT(无符号整数)和WORD(无符号字) |
| l | LONG(长整型) |
| dw | DWORD(无符号长整型) |
| fn | 函数指针 |
| s | 字符串 |
| sz,str | 以一个字节为0(空值)终止的字符串 |
| lp | 32位长指针 |
| h | 句柄(常用于windows对象) |
msg 消息
变量的命名
每一个单词开头大写,全局变量均已g_开头。
char *szYouName; //字符串
int *lpiData; //32位int指针
//全局变量均已g_开头
int g_ixPos; //全局int变量
char *g_szStr; //全局字符串
函数的命名
函数命名与变量命名方式相同,但是没有前缀。
int PlotPixel(int ix,int iy,int ic);
void *MemScan(char *szString);
类型和常量的命名
所有类型和常量都是大写字母,名字中可以有下划线。
const LONG MUN_SECTORS = 100;
#define MAX_CELLS 64;
typedef unsigned char UCHAR;
类的命名
规定所有c++类必须以大写C为前缀,类名第一个字母大写。
class CVector
{
public:
CVector(){}
.
.
.
private:
int ix,iy,iz;
}
本文介绍了微软广泛采用的匈牙利命名法的基本原则及应用。详细解释了各种变量、函数、类型和常量的命名规则,并给出了具体的例子。
3238

被折叠的 条评论
为什么被折叠?



