析构函数
1.概念
与构造函数功能相反,在对象被销毁时,由编译器自动调用,完成类的一些资源清理和汕尾工作。
2.特性
析构函数在类名(即构造函数名)加上字符~。
析构函数无参数无返回值。
一个类有且只有一个析构函数。若未显示定义,系统会自动生成缺省的析构函数。
对象生命周期结束时,C++编译系统系统自动调用析构函数。
注意析构函数体内并不是删除对象,而是做一些清理工作。
四、赋值运算符重载
1.概念
对于类类型的对象我们需要对‘=’重载,以完成类类型对象之间的赋值。
2.static成员
声明为static的类成员(成员数据或成员函数)称为类的静态成员。
特性:
(1)静态成员为所有类对象所共享,不属于某个具体的实例。
(2)类静态成员即可用类名::静态成员或者对象。静态成员来访问。
(3)类静态成员变量必须在类外定义,定义时不添加static关键字。
(4)类的静态成员函数没有默认的this指针,因此在它里面不能使用任何非静态成员。
(5)静态成员和类的普通成员一样,也有public、protected、private3种访问级别,也可以具有返回值,const修饰符等参数。
注意:
(1)静态成员函数不可以调用非静态成员函数;
(2)非静态的成员函数可以调用静态的成员函数。
3.const修饰类成员
使用场景:
(1)const修饰形参,一般和引用同时使用;
(2)const修饰返回值;
(3)const修饰类数据成员,必须在构造函数的初始化列表中初始化;
(4)const修饰类成员函数,实际修饰隐含的this,表示在类中不可以对类的任何成员进行修改;
(5)在const修饰的成员函数中要对类的某个数据成员进行修改,该数据成员定义声明是必须加mutable关键字。
说明:
const对象不可以调用非const成员函数,非const成员函数可以调用const成员函数
-
函数
+关注
关注
3文章
4327浏览量
62569 -
C++
+关注
关注
22文章
2108浏览量
73618
发布评论请先 登录
相关推荐
评论