VC++变量,范围前缀等命名规则

### VC++变量、范围前缀等命名规则详解 在软件开发过程中,良好的命名规范不仅可以提高代码的可读性,还能减少后期维护的工作量。本文将详细介绍VC++中的命名规则,特别是针对变量、范围前缀以及一些常用数据类型的命名规则。 #### 一、匈牙利命名法规则 匈牙利命名法是一种变量命名方法,通过在变量名前面添加描述性的前缀来表明该变量的数据类型或其他特性。在VC++中,匈牙利命名法遵循以下格式: ``` <scope_>+<prefix_>+<qualifier> ``` 其中: - `<scope_>` 表示变量的作用域前缀。 - `<prefix_>` 表示变量的数据类型或对象类型的前缀。 - `<qualifier>` 用于进一步描述变量的意义。 #### 二、类与接口的命名 在VC++中,类名和接口的命名也有特定的规定: - **类**: 类名前缀改为 `Lm`,例如 `LmObject`。 - 对于非全局的类,最好能够通过前缀表示出它所属的模块,以便更好地理解其用途。 - 类的实例命名与类名大致相同,但会带有前缀 `_` 来表示具体实例的意义。例如,`LmSketPoint` 表示一个草图点的类,其实例 `_StartPoint` 和 `_EndPoint` 分别代表起点和终点。 - **接口**: 接口名前缀为 `I`,例如 `IUnknown`。 - 接口命名只表示类型本身,不与范围前缀结合使用。 此外,还有一些特殊约定: - MouseTool 的派生类前缀为 `_Mt`。 - 对话框类的前缀为 `CDlg`。 - 橡皮条类的前缀为 `_Rb`。 #### 三、范围前缀 VC++中的范围前缀主要用于区分变量的作用域,常见的范围前缀包括: - `g_`: 全局作用域,例如 `g_Servers`。 - `m_`: 成员变量,通常用于类的私有成员变量,例如 `m_pDoc`。 - `l_`: 局部作用域,例如 `l_strName`。尽量少用全局变量,如果必须使用,则还需在类型前缀后加上模块关键字,如: - `Fea`: 特征模块。 - `Sket`: 草图模块。 - `Asm`: 装配模块。 - `Lay`: 工程图模块。 - `Surf`: 曲面模块。 - `Ui`: 界面模块。 #### 四、常用数据类型的前缀 VC++中对一些常用的数据类型也规定了特定的前缀: - `ch`: `char` 类型,例如 `chGrade`。 - `b`: `BOOL` 类型,例如 `bEnabled`。 - `n`: `int` 类型,例如 `nLength`。 - `w`: `WORD` 类型,例如 `wPos`。 - `l`: `LONG` 类型,例如 `lOffset`。 - `dw`: `DWORD` 类型,例如 `dwRange`。 - `p`: 指针类型,例如 `pDoc`。 - `lp`: 远指针类型,例如 `lpDoc`。 - `lpsz`: 字符串指针类型,例如 `lpszName`。 #### 五、Windows对象的命名 为了更好地管理Windows环境下的各种对象,VC++提供了一套规范的命名规则: - `hWnd`: 表示窗口句柄。 - `hDlg`: 表示对话框句柄。 - `hDC`: 表示设备上下文句柄。 - `hGdiObj`: 表示 GDI 对象句柄。 - `hPen`: 表示画笔句柄。 - `hBrush`: 表示画刷句柄。 - `hFont`: 表示字体句柄。 - `hBitmap`: 表示位图句柄。 - `hPalette`: 表示调色板句柄。 - `hRgn`: 表示区域句柄。 - `hMenu`: 表示菜单句柄。 - `hCtl`: 表示控件句柄。 #### 六、Visual C++ 常用宏定义命名列表 除了以上所述的命名规则外,VC++还定义了一系列宏来管理资源,这些宏的命名规则如下: - `IDR_`: 用于标识多个资源共享的类型,例如 `IDR_MAINFRAME`。 - `IDD_`: 用于标识对话框资源,例如 `IDD_SPELL_CHECK`。 - `IDB_`: 用于标识位图资源,例如 `IDB_COMPANY_LOGO`。 - `IDC_`: 用于标识光标资源,例如 `IDC_PENCIL`。 - `IDI_`: 用于标识图标资源,例如 `IDI_NOTEPAD`。 VC++中的命名规则非常详尽且具有指导意义,遵循这些规则不仅可以让代码更加规范易懂,还可以提高团队协作效率,减少后期维护成本。在实际开发中,建议开发者严格按照这些规则来进行变量和对象的命名,以确保代码质量。











- hathain2014-05-02总结得不错,正好拿来看看

- 粉丝: 16
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 运动后的该如何补充营养.pptx
- 基础垫层、防水保护层.doc
- 非正常情况应急处理.ppt
- 基于 WordPress Mini Program API 插件创建的 WordPress 小程序之 Travel 主题
- 班会课件-诚信伴我行.ppt
- 运用QC方法控制大体积砼施工质量.doc
- 制度是基础+执行是关键+监督是保障.doc
- three-platformize微信小程序demo.zip
- 中国南方航空大厦.doc
- 微信小程序-仿今日头条.zip
- 北京某住宅6#楼质量保修书.doc
- 潜水搅拌器的选用.doc
- 《倾心短视频》微信小程序.zip
- EPC工程管理实例.ppt
- 城市污水的截流与处理专题报告.ppt
- 岩土勘察报告范本.doc


