Chinaunix首页 | 论坛 | 博客
  • 博客访问: 151313
  • 博文数量: 44
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 407
  • 用 户 组: 普通用户
  • 注册时间: 2015-11-10 13:28
个人简介

仰望星空

文章分类
文章存档

2016年(22)

2015年(22)

我的朋友

分类: C/C++

2016-03-07 09:27:11

析构函数也是一种特殊的成员函数。它执行与构造函数相反的操作,通常用于撤消对象时的一些清理任务,如释放分配给对象的内存空间等。析构函数有以下一些特点:

1)析构函数与构造函数名字相同,但它前面必须加一个波浪号(~);

2)析构函数没有参数,也没有返回值,而且不能重载。因此在一个类中只能有一个析构函数;

3)当撤消对象时,编译系统会自动地调用析构函数。

#include
using namespace std;

class test
{
public:
int x, y;
test();
test(int a, int b);
void get();
~test();//析构函数
};

test::test()
{
cout<<"缺省构造函数"<
x = y = 0;
}

test::test(int a, int b)
{
cout<<"带参数构造函数"<
x = a; y = b;
}


void test::get()
{
cout<<"x = "<
}

test::~test()
{
cout<<"析构函数"<
}

int main()
{
test t1, t2(11, 22);
t1.get();
t2.get();//最终调用两次析构函数
return 0;
}

阅读(1238) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~