> 软件应用
构造函数和析构函数的用法(构造函数和析构函数的主要作用是什么)
导语:构造函数和析构函数(c++基础语法七)
构造函数的定义
c++中的类可以定义与类名相同的特殊成员函数,这种与类名相同的成员函数叫做构造函数。
class 类名 { 类名(形参){ 构造体 }}
构造函数的功能就是在对象被创建的时候,用来初始化对象的函数。
析构函数的定义
析构函数与构造函数的作用正好相反,用来完成对象删除前的一些清理工作,在对象即将被删除前自动调用的,也就是说在一个对象临死之前,会自动调用析构函数。析构函数使用完,对象用掉的内存空间就被释放回来了。
构造函数和析构函数都没有返回值。
析构函数没有形参。
默认的无参构造函数和析构函数
如果一个类里面什么都不写,那么也会有一个默认的无参构造函数和析构函数:
class Test {public: Test() { //默认的无参构造函数 } ~Test() { //默认的析构函数 }};
如果你显示的提供一个构造函数或者析构函数,那么默认的构造函数和析构函数将不复存在。
拷贝构造函数
由已经存在的对象来创建新对象,也就是说对象不是由构造器来构造,而是由拷贝构造器来完成。拷贝构造的格式:
class 类名{ 类名(const 类名 & another) { 拷贝构造体 }}
注意:
Test t2(t1); //拷贝构造Test t3 = t1; //依然是初始化t3的时候调用t3的构造函数。和Test t2(t1);等价Test t3;t3 = t1; //此处调用的不是t3的拷贝构造函数,构造函数只有在对象初始化的时候调用,这里调用的是t3的赋值操作符函数
申明:本文章记录学习笔记,分享给大家一起学习,有不正确的地方欢迎大家指出。如有侵权,马上删除。
本文内容由小琪整理编辑!