#include<iostream>
using namespace std;
class Student
{
public:
Student(string ,int );
~Student();
void show();
static int getnumber();
private:
string name;
int age;
static int number; //在类里面声明
};
void Student::show()
{
cout<<number<<endl;
}
int Student::number=0; //在类外面初始化,静态数据成员是类的成员不是对象成员
Student::Student(string na,int a):name(na),age(a){number++;};
int Student::getnumber()
{
return number;//静态成员函数引用静态数据成员,不用加::(域名)
}
Student::~Student()
{
number--;
}
void creat()
{
Student stu("fox",23);
cout<<"此时有"<<Student::getnumber()<<"名学生"<<endl;
}
int main()
{
Student stu1("dxf",22);
cout<<"此时有"<<Student::getnumber()<<"名学生"<<endl; //也课写成 stu1.getnumber
Student stu2("dwz",19);
cout<<"此时有"<<Student::getnumber()<<"名学生"<<endl;
creat();
cout<<"此时有"<<Student::getnumber()<<"名学生"<<endl;
stu1.show();
return 0;
}
静态数据成员
最新推荐文章于 2022-05-20 15:54:52 发布