C++析构函数
C++析构函数
在创建对象的时候系统会自动调用构造函数,在对象需要被销毁的时候同样系统会自动调用一个函数,这个函数被称之为析构函数。
析构函数就是用于回收创建对象时所消耗的各种资源。与构造函数类似,析构函数也是一个成员函数。析构函数与普通成员函数相比,有如下特征:
无返回值;
没有参数,不能被重载,因此一个类也只能含有一个析构函数;
函数名必须为“类名”的形式,符号“”与类名之间可以有空格。
#include <iostream>
using namespace std;
class book
{
public:
book(){}
book(book &b);
book(char* a, double p = 5.0);
~book();
void display();
private:
double price;
char *title;
};
book::book(book &b)
{
price = b.price;
title = b.title;
}
book::book(char* a, double p)
{
title = a;
price = p;
}
book::~book()
{
cout<<"~book " <<endl;
//delete p;
//delete[] p;
}
void book::display()
{
if(title == NULL)
{
cout<<"The title null " <<endl;
}
else
{
cout<<"The price of "<<title<<" is $"<<price<<endl;
}
}
int main()
{
cout << "Hello World!" << endl;
// book b;
// b.display();
book b2("books");
b2.display();
book b3(b2);
b3.display();
return 0;
}
book::~book()
{
cout<<"~book " <<endl;
//delete p;
//delete[] p;
}
本文介绍了C++中的析构函数,它在对象销毁时自动调用,用于释放资源。析构函数无返回值,无参数,且不可重载。在示例中展示了如何定义和使用析构函数,以及其在内存管理中的作用。
1005

被折叠的 条评论
为什么被折叠?



