C++ 类和对象的定义涉及到的关键字记录

在 C++ 中,类和对象的定义涉及到许多关键字,这些关键字用于描述类的属性、行为和访问权限等。以下是常见关键字的分类和作用:

1. 访问控制关键字

关键字 作用
private 私有成员,只有类的内部成员函数能够访问,默认的访问权限。
protected 受保护成员,类的内部成员函数和子类可以访问。
public 公有成员,任何地方都可以访问。

代码如下

cpp 复制代码
class Example {
private:
    int x; // 私有成员变量
protected:
    int y; // 受保护成员变量
public:
    int z; // 公有成员变量
};

2. 类定义与相关的关键字

关键字 作用
class 定义类。
struct 定义结构体,与类类似,但默认访问权限是 public 而不是 private
this 当前对象的指针,用于引用调用成员函数的对象。
friend 声明友元函数或友元类,允许它们访问类的私有和受保护成员。
mutable 允许在 const 对象中修改某个数据成员。

3. 构造与析构相关关键字

关键字 作用
new 动态分配内存并返回对象指针。
delete 释放动态分配的内存。
explicit 防止构造函数隐式转换。
virtual 声明虚函数,支持运行时多态。
override 明确表示覆盖基类的虚函数。
final 禁止子类重写虚函数或继承某个类。

4. 静态成员相关关键字

关键字 作用
static 声明类的静态成员,所有对象共享同一个变量。

5. 常量相关关键字

关键字 作用
const 声明常量,防止变量被修改。也用于成员函数,表示该函数不会修改对象状态。
constexpr 声明编译时常量,允许在编译时求值。

6. 内存分配与特殊用途关键字

关键字 作用
operator 用于定义运算符重载。
typedef 定义类型别名。
using 替代 typedef 的现代语法,也用于导入命名空间。
inline 提示编译器将函数定义为内联函数。
sizeof 获取类型或对象的大小(单位:字节)。
alignof 获取类型的对齐要求。

7. 模板相关关键字

关键字 作用
template 声明类或函数模板,用于泛型编程。
typename 定义类型参数,或表示依赖类型。
class 在模板中也可用来声明类型参数,与 typename 类似。
相关推荐
2301_7965125213 分钟前
Rust编程学习 - 问号运算符会return一个Result 类型,但是如何使用main函数中使用问号运算符
开发语言·学习·算法·rust
草莓熊Lotso18 分钟前
Linux 基础开发工具入门:软件包管理器的全方位实操指南
linux·运维·服务器·c++·人工智能·网络协议·rpc
座山雕~19 分钟前
测试接口-----详细
开发语言·postman
小龙报29 分钟前
算法通关指南:数据结构和算法篇 --- 队列相关算法题》--- 1. 【模板】队列,2. 机器翻译
c语言·开发语言·数据结构·c++·算法·学习方法·visual studio
木木em哈哈36 分钟前
有关于cnb自动化的脚本补全
服务器·开发语言·pygame
星释37 分钟前
Rust 练习册 :Poker与扑克牌游戏
开发语言·游戏·rust
晨非辰1 小时前
【数据结构初阶】--从排序算法原理分析到代码实现操作,参透插入排序的奥秘!
c语言·开发语言·数据结构·c++·算法·面试·排序算法
Jonathan Star1 小时前
Next.js、NestJS、Nuxt.js 是 **Node.js 生态中针对不同场景的框架**
开发语言·javascript·node.js
zhangyao9403304 小时前
关于js导入Excel时,Excel的(年/月/日)日期是五位数字的问题。以及对Excel日期存在的错误的分析和处理。
开发语言·javascript·excel
骑驴看星星a4 小时前
【Three.js--manual script】4.光照
android·开发语言·javascript