VC++编程关键字完全指南
版权申诉
183 浏览量
更新于2024-09-08
收藏 79KB PDF 举报
"VisualC++(VC++)编程序软件语言关键字大全集合.pdf"
本文将详细介绍Visual C++(简称VC++)编程语言中的关键字及其用途。这些关键字是编程的基础,用于定义和控制程序的行为、数据类型以及类和对象的结构。下面我们将逐个解析这些关键字。
1. **__abstract**: 表明一个类是抽象的,它不能被实例化,必须至少有一个纯虚函数。
2. **__alignofOperator**: 返回变量或类型的对齐要求。
3. **__asm**: 允许在C++代码中插入汇编代码。
4. **__assume**: 告诉编译器假设某个表达式总是为真,优化代码。
5. **__based**: 用于基于指定基地址的指针类型。
6. **__box**: 在.NET环境中,将值类型转换为对象引用。
7. **__cdecl**: 使用C语言调用约定,函数参数由被调用者清理。
8. **__declspec**: 用于声明特殊属性,如内存管理、导出和导入函数等。
9. **__delegate**: 定义委托类型,类似于C#中的事件处理器。
10. **__event**: 用于声明事件。
11. **__except**/**__finally**: 与异常处理相关,`__except`用于捕获异常,`__finally`确保代码块在任何情况下都会执行。
12. **__forceinline**: 强制编译器进行内联,提高效率。
13. **__gc**: 指示对象应由垃圾收集器管理。
14. **__hook**: 连接事件处理程序。
15. **__identifier**: 创建具有特定标识符名称的预处理器宏。
16. **__if_exists**/**__if_not_exists**: 分别用于检查类型或成员是否存在。
17. **__inline**: 提示编译器考虑内联函数。
18. **__int16**/**__int32**/**__int64**/**__int8**: 定义固定大小的整数类型。
19. **__interface**: 定义COM接口。
20. **__leave**: 用于`try/except`块,直接跳过剩余的`finally`块。
21. **__m128**/**__m128d**/**__m128i**/**__m64**: SSE/SSE2/SSE3数据类型,用于高性能计算。
22. **__multiple_inheritance**: 表示类支持多重继承。
23. **__nogc**: 禁止垃圾收集器管理类的对象。
24. **__noop**: 无操作函数,通常用于占位符或调试。
25. **__pin**: 将对象固定在内存中,防止垃圾收集器移动。
26. **__property**: 定义属性,类似于C#中的属性。
27. **__raise**: 触发事件。
28. **__sealed**: 禁止子类进一步继承。
29. **__single_inheritance**: 表示类支持单继承。
30. **__stdcall**: 使用标准调用约定,参数由调用者清理。
31. **__super**: 访问基类的成员。
32. **__thiscall**: 类成员函数的默认调用约定,参数由对象本身清理。
33. **__try**/**__except**/**__finally**: 异常处理结构。
34. **__try_cast**: 类型安全的强制转换。
35. **__unaligned**: 指示不按对齐方式访问数据。
36. **__unhook**: 移除事件处理程序。
37. **__uuidof**: 获取类型或接口的UUID。
38. **__value**: 在元类中定义值类型。
39. **__virtual_inheritance**: 表示类使用虚拟继承。
40. **__w64**: 在64位系统上扩展类型。
41. **__wchar_t**和**wchar_t**: 宽字符类型,用于Unicode字符串。
此外,还有其他一些基本的关键字:
42. **abstract**: 类型声明为抽象,不能被实例化。
43. **array**: 用于定义数组。
44. **auto**: 自动推断变量类型。
45. **bool**: 布尔类型。
46. **break**: 退出循环或switch语句。
47. **case**: switch语句中的分支标记。
48. **catch**: 捕获异常。
49. **char**: 字符类型。
50. **class**: 定义类。
51. **const**: 声明常量。
52. **const_cast**: 改变对象的常量性。
53. **continue**: 继续下一轮循环。
54. **decltype**: 从表达式的类型推断类型。
55. **delegate**: .NET中的委托类型。
56. **delete**: 删除动态分配的对象。
57. **deprecated**: 标记已弃用的函数或类型。
58. **dllexport/dllimport**: 控制函数和类的导出和导入。
59. **do/while**: 循环结构。
60. **double**: 双精度浮点数类型。
61. **dynamic_cast**: 动态类型转换。
62. **else**: if语句的否定分支。
63. **enum**: 定义枚举类型。
64. **enumclass/enumstruct**: C++11引入的强类型枚举。
65. **event**: .NET事件。
66. **explicit**: 防止隐式类型转换。
67. **extern**: 声明外部变量或函数。
68. **false**: 布尔常量,表示假。
69. **finally**: 异常处理的finally块。
70. **float**: 单精度浮点数类型。
71. **for**: 循环结构。
72. **foreach/in**: 遍历集合。
73. **friend**: 定义友元关系。
74. **friend_as**: .NET中的友好类型转换。
75. **gcnew**: .NET中的动态内存分配。
76. **generic**: 定义泛型类型。
77. **goto**: 跳转到标签。
78. **if**: 条件语句。
79. **initonly**: 属性只允许在初始化期间设置。
80. **inline**: 提示编译器内联函数。
81. **int**: 整数类型。
82. **interfaceclass/interfacestruct**: .NET中的接口。
83. **interior_ptr**: .NET中的托管指针。
84. **literal**: 定义文字常量。
85. **long**: 长整数类型。
86. **mutable**: 允许修改const对象的成员。
87. **naked**: 不使用系统堆栈调整的函数。
88. **namespace**: 定义命名空间。
89. **new**: 动态内存分配。
90. **noinline**: 禁止内联。
91. **noreturn**: 表示函数不会返回。
92. **nothrow**: 表示构造函数或析构函数不会抛出异常。
93. **nullptr**: C++11的空指针常量。
94. **operator**: 重载运算符。
95. **private**: 成员的私有访问修饰符。
96. **protected**: 成员的保护访问修饰符。
97. **public**: 成员的公有访问修饰符。
98. **register**: 建议将变量存储在寄存器中(现代编译器通常忽略此提示)。
99. **reinterpret_cast**: 强制类型转换,不进行安全性检查。
100. **return**: 从函数返回值。
101. **short**: 短整数类型。
102. **signed**: 有符号整数类型。
103. **sizeof**: 返回类型或变量的大小。
104. **static**: 静态修饰符,用于变量或函数。
105. **static_assert**: 静态断言,编译时检查。
106. **static_cast**: 安全的静态类型转换。
107. **struct**: 定义结构体。
108. **switch**: 开始switch语句。
109. **template**: 定义模板。
110. **this**: 当前对象的指针。
111. **throw**: 抛出异常。
112. **true**: 布尔常量,表示真。
113. **try**: 异常处理的try块。
114. **typedef**: 定义类型别名。
115. **typename**: 指示模板参数是类型。
116. **union**: 定义联合体。
117. **unsigned**: 无符号整数类型。
118. **using**:
2021-11-04 上传
2021-10-12 上传
2010-01-15 上传
2021-12-14 上传
2021-12-25 上传
136 浏览量
2009-09-10 上传
2021-10-18 上传
2010-04-23 上传
maodi_lzc
- 粉丝: 1
- 资源: 3万+
最新资源
- NIST REFPROP问题反馈与解决方案存储库
- 掌握LeetCode习题的系统开源答案
- ctop:实现汉字按首字母拼音分类排序的PHP工具
- 微信小程序课程学习——投资融资类产品说明
- Matlab犯罪模拟器开发:探索《当蛮力失败》犯罪惩罚模型
- Java网上招聘系统实战项目源码及部署教程
- OneSky APIPHP5库:PHP5.1及以上版本的API集成
- 实时监控MySQL导入进度的bash脚本技巧
- 使用MATLAB开发交流电压脉冲生成控制系统
- ESP32安全OTA更新:原生API与WebSocket加密传输
- Sonic-Sharp: 基于《刺猬索尼克》的开源C#游戏引擎
- Java文章发布系统源码及部署教程
- CQUPT Python课程代码资源完整分享
- 易语言实现获取目录尺寸的Scripting.FileSystemObject对象方法
- Excel宾果卡生成器:自定义和打印多张卡片
- 使用HALCON实现图像二维码自动读取与解码