析构函数的使用与调用

来源:互联网 发布:js去除class样式 编辑:程序博客网 时间:2024/06/08 03:11
#include <iostream>#include <string>using namespace std;class Student{public:Student(char *name1,char *stu_no1,float score1);~Student();void show();void show_count_sum_ave();private:char *name;char *stu_no;float score;static int count;static float sum;static float ave;};Student::Student(char *name1,char *stu_no1,float score1){name=new char[strlen(name1)+1];strcpy(name,name1);stu_no=new char[strlen(stu_no1)+1];strcpy(stu_no,stu_no1);score=score1;++count;sum=sum+score;ave=sum/count;}Student::~Student(){  cout<<"~Student"<<endl;
         delete []name;delete []stu_no;}void Student::show(){cout<<"姓名:"<<name<<endl;cout<<"学号:"<<stu_no<<endl;cout<<"成绩:"<<score<<endl;}void Student::show_count_sum_ave(){cout<<"总人数:"<<count<<endl;cout<<"总分数:"<<sum<<endl;cout<<"平均分数:"<<ave<<endl;}int Student::count=0;float Student::sum=0;float Student::ave=0;int main(){Student stu("小花","001",90);stu.show();stu.show_count_sum_ave();Student stu1("小明","002",80);stu1.show();stu1.show_count_sum_ave();return 0;}


当对象调用完后,自动调用析构函数

原创粉丝点击