您的位置:首页 > 其它

类与对象(构造函数,析构函数,静态数据成员)。。。2014.5.19

2014-05-19 15:11 253 查看
/*文件名:main.cpp*/
//静态数据成员
//构造函数
//析构函数
#include<iostream>
using namespace std;

class Student//学生这个类的定义
{
public:
Student();//构造函数的声明,构造函数用来完成变量的初始化.
~Student();//析构函数的声明,析构函数用来完成对象的内存的释放.
void output();//学生信息的输出。
int totalStu();//学生人数.
private:
int stuNum;
char name[20];
char sex[3];
static int count;//定义的静态数据成员,用static关键字,用来统计学生的人数.
};
int Student::count=0;//静态数据成员的初始化.

Student::Student()//构造函数的定义.
{
count++;//在初始化第一个对象的时候将count的数加一.
cout<<"输入第"<<count<<"个学生的名字"<<endl;
cin>>name;
cout<<"输入第"<<count<<"个学生的学号"<<endl;
cin>>stuNum;
cout<<"输入第"<<count<<"个学生的性别"<<endl;
cin>>sex;
}
Student::~Student()//析构函数的定义.
{
count--;
}

void Student::output()//学生信息输出函数的定义.
{
cout<<"姓名"<<name<<endl;
cout<<"学号"<<stuNum<<endl;
cout<<"性别"<<sex<<endl;
}

int Student::totalStu()//学生人数输出的函数定义
{
return count;
}

int main()
{
Student a1,a2,a3;//定义了学生类下的三个对象。
//同时会自动的进行三次初始化.
cout<<"三个学生对象生成之后"<<endl;
cout<<"当前学生的人数:"<<a2.totalStu()<<endl;
a1.output();
a2.output();
a3.output();
a2.~Student();//会将a2对象给清理掉,同时会将学生的个数减一.
cout<<"当前学生的人数:"<<a1.totalStu()<<endl;
system("pause");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐