目标:
- 类的默认成员函数
- 构造函数
- 析构函数
- 拷贝构造函数
- 赋值操作符重载
- 默认拷贝函数与赋值运算符重载
- const成员函数
默认的成员函数
如果一个函数什么都没有,那么也会自己生成六个默认的成员函数。分别是:
- 初始化和清理 (构造函数 和 析构函数)
- 拷贝函数 拷贝构造使用同类对象初始化创建对象 赋值重载注意是把对象赋值给另一个对象。
- 取地址重载 普通对象和const对象取地址
构造函数
用来进行初始化操作的,它是一个特殊的函数,名字必须和类名相同,通过编译器自动调用,保证每一个都存在一个合理的值,并且只会执行一次。
特性:构造函数是特殊的成员函数,需要注意的是,构造函数虽然叫构造,但是需要用注意的是构造函数不是开空间的,而是进行初始化参数。
- 类名和函数相同
- 没有返回值
- 对象实例化是编译器自己加载
- 构造函数可以进行重载
如果说我没有定义一个构造函数,那么就会自动提供一个默认的,如果自己设置了那么就不会产生默认的了。如果我们写了默认的,那么编译器就不需要为我们创建了。
问:对于默认的构造函数到底有什么用呢 ??
它可以对成员变量进行一次初始化。
析构函数
析构函数是销毁对象的地方,对于Java我们不需要自己去操作,所有没有相关函数。
c++析构函数的特性:
- 析构函数一般是类名加上~
- 无参数返回值
- 一个类有且只有一个析构函数,如果未定义,生成默认的
- 声明结束的时候会自己调用
默认的析构函数干什么呢??
默认的会调用,自定义类型的析构函数。
拷贝构造函数
存在两个相同的,对象也可生成两个一样的,·
网友评论