首页 > 代码库 > c++析构函数
c++析构函数
【1】析构函数的作用
析构函数的作用并不是删除对象,而是在撤销对象
占用的内存之前完成一些清理工作,使这部分内存
可以被程序分配给新对象使用。程序设计者事先设
计好析构函数,以完成所需的功能,只要对象的生
命期结束,程序就自动执行析构函数来完成这些工
作。
析构函数不返回任何值,没有函数类型,也没有函
数参数。因此它不能被重载。一个类可以有多个构
造函数,但只能有一个析构函数。
【2】
一般情况下,类的设计者应当在声明类的同时定义
析构函数,以指定如何完成“清理”的工作。如果用
户没有定义析构函数,C++编译系统会自动生成一
个析构函数,但它只是徒有析构函数的名称和形
式,实际上什么操作都不进行。想让析构函数完成
任何工作,都必须在定义的析构函数中指定。
#include<string>#include<iostream>using namespace std;class Student{ public: Student(int n,string nam,char s)//构造函数 { num = n; name = nam; sex = s; cout<<"Constructor called."<<endl; } ~Student()//析构函数 { cout<<"Destructor called."<<endl; } void display() { cout<<"num:"<<num<<endl; cout<<"name:"<<name<<endl; cout<<"sex:"<<sex<<endl<<endl; } private: int num; string name; char sex;};int main(){ Student stud1(10010,"wang_li",‘f‘); stud1.display(); Student stud2(10011,"zhang_fun",‘m‘); stud2.display(); return 0;}
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。