VC快捷键和命名.doc
需积分: 0 3 浏览量
更新于2008-06-22
收藏 53KB DOC 举报
在VC++编程环境中,匈牙利命名法是一种广泛使用的命名规范,它强调通过变量名的前缀来指示其数据类型,以提高代码可读性和一致性。这种命名规则源自微软的编程实践中,尤其在Visual C++ (VC) 开发中常见。
1. **类的命名**:
类的命名遵循C++的驼峰命名法,即首字母大写的单词组合,通常是一个描述性的名词短语,不包含下划线。例如,`CMyClass`代表一个自定义的类。
2. **函数(类成员函数)**:
函数名也采用驼峰命名法,通常是一个动宾短语,比如`GetName()`、`PostMessage()`、`SaveProfile()`等。这些函数名称清晰地表达了它们的功能。
3. **成员变量**:
成员变量以`m_`作为前缀,接着是类型标记(如果适用),再是首字母大写的单词组合。例如,`m_szName`表示一个以0结尾的字符串变量,`m_nAge`表示一个整型变量表示年龄。
4. **全局变量**:
全局变量的命名与成员变量类似,只是将`m_`替换为`g_`,例如`g_iGlobalCounter`。
5. **静态变量**:
静态成员变量的命名类似于成员变量,但使用`s_`代替`m_`,如`s_bIsActive`。
6. **参数**:
函数参数的命名与成员变量一致,但没有前缀,如`SaveProfile(NewProfile)`。
7. **指针**:
指针变量通常以`p`作为前缀,如`pMyObject`。指向指针的指针则是`pp`,如`ppMyObjectPointer`。
8. **匈牙利符号表示法**:
这种表示法中,变量前缀根据数据类型不同而变化,例如:
- `C`表示字符
- `BY`表示字节
- `N`, `I`表示整数
- `W`表示无符号数
- `L`表示长整数
- `DW`表示无符号长整数
- `B`表示布尔值
- `SZ`, `STR`表示以0结尾的字符串
- `LP`表示32位长整数指针
- `H`表示编号,通常用于Windows对象
- `MSG`表示消息
9. **变量的命名**:
变量名使用上述的前缀加上描述性的小写单词,例如`szFileName`表示一个以0结尾的字符串变量,`lpiDate`表示一个指向整型变量的32位长指针。
10. **函数的命名**:
函数名不带前缀,但遵循驼峰命名法,例如`PlotPixel`,`MemScan`。下划线在函数名中是不被推荐的。
11. **类型和常量的命名**:
类型和常量通常全大写,有时可以包含下划线,如`NUM_SECTORS`、`MAX_CELLS`、`POWERUNIT`。`typedef`定义的用户自定义类型如`UCHAR`也是全大写。
12. **类的命名约定**:
类名的约定可以更复杂,通常使用首字母大写的多个单词组合,如`CMyCustomClass`。虽然不强制,但建议使用这种风格以保持代码的一致性。
匈牙利命名法的主要优点在于提高了代码的可读性,尤其是对于大型项目,使得开发人员能快速理解变量、函数、类等的用途和类型。然而,这种命名规范也因其冗余和与某些编程原则的冲突而受到批评。在现代编程实践中,一些开发者倾向于使用其他命名约定,如帕斯卡命名法(PascalCase)或下划线分隔的命名法(snake_case)。
linuxczx
- 粉丝: 2
- 资源: 13
最新资源
- nuget 库官方下载包,可使用解压文件打开解压使用
- 非wine、原生Linux迅雷安装包deb文件,支持Ubuntu、UOS统信、深度Deepin、LinuxMint、Debain系通用
- KUKA机器人安装包,与PROFINET软件包
- 船舶燃料消耗和二氧化碳排放分析数据集,燃料消耗和碳排放关联分析数据
- req-sign、bd-ticket-ree-public加密算法(JS)
- 全自动批量建站快速养权重站系统【纯静态html站群版】:(GPT4.0自动根据关键词写文章+自动发布+自定义友链+自动文章内链+20%页面加提权词)
- 串联式、并联式、混联式混合动力系统simulink控制策略模型(串联式、并联式、混联式每个都是独立的需要单独说拿哪个,默认是混联式RB) 有基于逻辑门限值、状态机的规则控制策略(RB)、基于等效燃油
- 法码滋.exe法码滋2.exe法码滋3.exe
- python-geohash-0.8.5-cp38-cp38-win-amd64
- Matlab根据flac、pfc或其他软件导出的坐标及应力、位移数据再现云图 案例包括导出在flac6.0中导出位移的fish代码(也可以自己先准备软件导出的坐标数据及对应点的位移或应力数据,可根据需