欢迎来到天天文库
浏览记录
ID:37714448
大小:28.94 KB
页数:10页
时间:2019-05-29
《vc++匈牙利命名法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、匈牙利命名法是一种编程时的命名规范。基本原则是:变量名=属性+类型+对象描述。其中每一对象的名称都要求有明确含义,可以取对象名字全称或名字的一部分。命名要基于容易记忆容易理解的原则。目前在Windows程序开发和MFC程序开发中常用的命名规则是匈牙利命名法。下面就是HN命名法的一般规则。属性部分全局变量g_const常量c_c++类成员变量m_静态变量s_类型部分指针p函数fn无效v句柄h长整型l布尔b浮点型(有时也指文件)f双字dw字符串sz短整型n双精度浮点d计数c(通常用cnt)字符ch(通常用c
2、)整型i(通常用n)字节by字w实型r无符号u描述部分最大Max最小Min初始化Init临时变量T(或Temp)源对象Src目的对象Dest这里顺便写几个例子:(1)hwnd:h是类型描述,表示句柄,wnd是变量对象描述,表示窗口,所以hwnd表示窗口句柄;(2)pfnEatApple:pfn是类型描述,表示指向函数的指针,EatApple是变量对象描述,所以它表示指向EatApple函数的函数指针变量。(3)g_cch:g_是属性描述,表示全局变量,c和ch分别是计数类型和字符类型,一起表示变量类型,
3、这里忽略了对象描述,所以它表示一个对字符进行计数的全局变量。小结:匈牙利命名法MFC、句柄、控件及结构的命名规范Windows类型样本变量MFC类样本变量HWNDhWnd;CWnd*pWnd;HDLGhDlg;CDialog*pDlg;HDChDC;CDC*pDC;HGDIOBJhGdiObj;CGdiObject*pGdiObj;HPENhPen;CPen*pPen;HBRUSHhBrush;CBrush*pBrush;HFONThFont;CFont*pFont;HBITMAPhBitmap;CBi
4、tmap*pBitmap;HPALETTEhPaltte;CPalette*pPalette;HRGNhRgn;CRgn*pRgn;HMENUhMenu;CMenu*pMenu;HWNDhCtl;CState*pState;HWNDhCtl;CButton*pButton;HWNDhCtl;CEdit*pEdit;HWNDhCtl;CListBox*pListBox;HWNDhCtl;CComboBox*pComboBox;HWNDhCtl;CScrollBar*pScrollBar;HSZhszStr
5、;CStringpStr;POINTpt;CPointpt;SIZEsize;CSizesize;RECTrect;CRectrect;一般前缀命名规范前缀类型实例C类或结构CDocument,CPrintInfom_成员变量m_pDoc,m_nCustomers变量命名规范前缀类型描述实例chchar8位字符chGradechTCHAR如果_UNICODE定义,则为16位字符chNamebBOOL布尔值bEnablenint整型(其大小依赖于操作系统)nLengthnUINT无符号值(其大小依赖于操作
6、系统)nHeightwWORD16位无符号值wPoslLONG32位有符号整型lOffsetdwDWORD32位无符号整型dwRangep*指针pDoclpFAR*远指针lpszNamelpszLPSTR32位字符串指针lpszNamelpszLPCSTR32位常量字符串指针lpszNamelpszLPCTSTR如果_UNICODE定义,则为32位常量字符串指针lpszNamehhandleWindows对象句柄hWndlpfncallback指向CALLBACK函数的远指针资源类型命名规范前缀符号类型
7、实例范围IDR_不同类型的多个资源共享标识IDR_MAIINFRAME1~0x6FFFIDD_对话框资源IDD_SPELL_CHECK1~0x6FFFHIDD_对话框资源的Help上下文HIDD_SPELL_CHECK0x20001~0x26FFIDB_位图资源IDB_COMPANY_LOGO1~0x6FFFIDC_光标资源IDC_PENCIL1~0x6FFFIDI_图标资源IDI_NOTEPAD1~0x6FFFID_来自菜单项或工具栏的命令ID_TOOLS_SPELLING0x8000~0xDFFFH
8、ID_命令Help上下文HID_TOOLS_SPELLING0x18000~0x1DFFFIDP_消息框提示IDP_INVALID_PARTNO8~0xDEEFHIDP_消息框Help上下文HIDP_INVALID_PARTNO0x30008~0x3DEFFIDS_串资源IDS_COPYRIGHT1~0x7EEFIDC_对话框内的控件IDC_RECALC8~0xDEEFMicrosoftMFC宏命名规范名称类型_AFXDLL唯一的动态连接库
此文档下载收益归作者所有