C++类的析构函数

C++类的析构函数

构造函数和析构函数是类体定义中比较特殊的两个成员函数

构造函数的学习:——————》C++类的构造函数

本文主要介绍构造函数析构函数异同以及析构函数使用方法

相同点

两者都没有返回值,不使用return语句,也不需要关键字void。

不同点

1、构造函数主要是用来在对象创建时,给对象中的一些数据成员赋值,主要目的计数来初始化对象。
2、析构函数的功能是用来释放一个对象的,在对象删除前,用它来做一些清理工作。
3、构造函数名标识符和类名标识符相同,析构函数名标识符就是类名标识符前加"~"符号。

析构函数使用方法:

class CPerson{
	public:
		~CPerson(){
			delete M;
		} 
		char M[30];
};

构造函数析构函数的入门应用源代码:

#include<iostream>
#include<string.h>
using namespace std;
class CPerson{
	public:
		CPerson(){
			strcpy(M,"Hello World\0");
		}
		~CPerson(){
			delete M;
		} 
		char M[30];
		show(){
			cout<<M<<endl;
		}
};
int main(){
	
	CPerson p1;
	p1.show();
	
} 

结果图:
析构函数
tips:对于以下的注意事项和调用环境,你要是心情好就看看,不想看就算了,其实没什么卵用。

使用析构函数的注意事项

1、一个类中只可能定义一个析构函数。
2、析构函数不能重载。

构造函数析构函数的调用环境

1、自动变量的作用域是某个模块,当此模块被激活时,自动变量调用构造函数,当退出此模块时,调用析构函数。
2、全局变量在进入main函数之前会调用析构函数,在程序终止时会调用析构函数。
3、动态分配的对象在使用new为对象分配内存时会调用构造函数,使用delete删除对象时会调用析构函数。
4、临时变量是为支持计算,由编译器自动产生的。临时变量的生存期的开始和结尾会调用构造函数和析构函数。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值