词条 | 匈牙利标记法 |
释义 | 匈牙利标记法 是编程中变量的一种命名习惯。这是为了纪念具有传奇色彩的微软程序员Charles Simonyi。这种标记法非常简单,即变量名表明该变量数据类型的小写字母开始。例如,szCmdLine的前缀sz表示“以零结束的字符串”。 具体用法格式:[Prefix]-BaseTag-Name 其中 [Prefix]是可选的,BaseTag是数据类型的缩写,Name是变量名字,说明变量的作用 前缀[Prefix]p-指针 rg-集合 c-计数器 h-句柄 BaseTag主要有: v-void i-int f-BOOL ui-UINT b-BYTE ch-CHAR wch-WCHAR ul-ULONG l-LONG dw-DWORD hr-HRESULT fn-funtion sz-NULL str w-USHORT,SHORT,WORD 成员命名针对函数成员,成员变量用m_开头,全局变量用g_开头 example: BOOL m_fInitialized BYTE *pbBuffer 变量命名命名必须具有一定的实际意义,形式为xAbcFgh,x由变量类型确定,Abc、Fgh表示连续意义字符串,如果连续意义字符串仅两个,可都大写.如OK. 具体例程: BOOL类型 bEnable; ch * char chText c * 类对象 cMain(对象实例) h * Handle(句柄) hWnd i * int n * 无符号整型 p * 指针 sz,str * 字符串 //sz 0结尾字符串 w WORD x,y 坐标 Char或者TCHAR类型 与Windows API有直接联系的用szAppName[10]形式否则用 FileName[10]形式,单个字符也可用小写字母表示; Int类型 nCmdShow; LONG类型 lParam; UINT类型 uNotify; DWORD类型 dwStart; PSTR类型 pszTip; LPSTR类型 lpCmdLine LPTSTR类型 lpszClassName; LPVOID类型 lpReserved WPARAM类型 wParam, LPARAM类型 lParam HWND类型 hDlg; HDC类型 hDC; HINSTANCE类型 hInstance HANDLE类型 hInstance, HICON类型 hIcon; int iTmp float fTmp DWORD dw* String , AnsiString str * m_ 类成员变量 m_nVal, m_bFlag g_ 全局变量 g_nMsg, g_bFlag 局部变量中可采用如下几个通用变量:nTemp,nResult,I,J(一般用于循环变量)。 其他资源句柄同上 常量命名和宏定义常量和宏定义必须具有一定的实际意义; 常量和宏定义在#include和函数定义之间; 常量和宏定义必须全部以大写字母来撰写,中间可根据意义的连续性用下划线连接,每一 条定义的右侧必须有一简单的注释,说明其作用; 资源名字定义格式: 菜单:IDM_XX或者CM_XX 位图:IDB_XX 对话框:IDD_XX 字符串:IDS_XX DLGINIT:DIALOG_XX ICON:IDR_XX 函数命名函数原型说明包括引用外来函数及内部函数,外部引用必须在右侧注明函数来源: 模 块名及文件名, 如是内部函数,只要注释其定义文件名; 第一个字母必须使用大写字母,要求用大小写字母组合规范函数命名,必要时可用下划线 间隔,示例如下: void UpdateDB_Tfgd (TRACK_NAME); //Module Name :r01/sdw.c void PrintTrackData (TRACK_NAME); //Module Name :r04/tern.c void ImportantPoint (void); //Module Name :r01/sdw.c void ShowChar (int , int , chtype); //Local Module void ScrollUp_V (int , int); //Local Module .5结构体命名 结构体类型命名必须全部用大写字母,原则上前面以下划线开始;结构体变量命名必须用 大小写字母组合,第一个字母必须使用大写字母,必要时可用下划线间隔。对于私有数 据区,必须注明其所属的进程。全局数据定义只需注意其用途。 示例如下: typedef struct { char szProductName[20]; char szAuthor[20]; char szReleaseDate[16]; char szVersion[10]; unsigned long MaxTables; unsigned long UsedTables; }DBS_DATABASE; DBS_DATABASE GdataBase; 控件的命名用小写前缀表示类别 用小写前缀表示类别: fm 窗口 cmd 按钮 cob combo,下拉式列表框 txt 文本输入框 lab labal,标签 img image,图象 pic picture grd Grid,网格 scr 滚动条 lst 列表框 frm fram 注释原则上注释要求使用中文; 文件开始注释内容包括:公司名称、版权、作者名称、时间、模块用途、背景介绍等,复 杂的算法需要加上流程说明; 函数注释包括:输入、输出、函数描述、流程处理、全局变量、调用样例等,复杂的函数 需要加上变量用途说明; 程序中注释包括:修改时间和作者、方便理解的注释等; |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。