c++-析构函数

c++-析构函数

类的析构函数是类的一种特殊的成员函数,它会在每次删除所创建的对象时执行。

析构函数的名称与类的名称是完全相同的,只是在前面加了个波浪号(~)作为前缀,它不会返回任何值,也不能带有任何参数。析构函数有助于在跳出程序(比如关闭文件、释放内存等)前释放资源。

定义析构函数应满足以下的要求:

1,析构函数的名称是在构造函数的名称之前添加个“~”

2,析构函数没有参数

3,析构函数中不能通过return语句返回一个值。

4,一个类中只能有一个析构函数不可重载。

下面的实例有助于更好地理解析构函数的概念:

#include<iostream>
#include<cstring>
#include<string> 
using namespace std;
class Car{
	public:
		Car();//无参构造函数的声明 
		~Car();
		string get_charname();
		int get_seats();
	private: 
		string m_pcarname;
		int m_nseats;
	
};
Car::Car(){//定义无参的构造函数 
	cout << "car constructor !" << endl;
	m_pcarname = "马云的迈巴赫";//定义指针成员的初值为nullptr,值为0 
	m_nseats = 4;
}
Car::~Car()
{
	
}
string Car::get_charname()
{
	return m_pcarname;
}
int  Car::get_seats()
{
	return m_nseats;
}
int main(){
	Car mycar;
	cout << "汽车名" << mycar.get_charname() <<endl<< "座位有" << mycar.get_seats() <<"个"<<endl;
	return 0;
}

运行结果为:

 

c++-析构函数

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/114815.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号