静态成员-->静态数据成员,静态成员函数

来源:互联网 发布:面色暗黄怎么调理 知乎 编辑:程序博客网 时间:2024/06/06 03:47
//1.静态成员--->静态成员变量
//2.静态成员--->静态成员函数
#include<iostream>
#include<string>
using namespace std;
//1.静态成员变量--->静态成员变量
//
//classWorker
//{
//private:
//stringname;
//intworktime;
//public:
//staticinttotal;//用于统计总的工作时间
//voidworkTime(int n);
//};
//
//voidWorker::workTime(int n)
//{
//worktime = n;
//total+= worktime;
//}
//
//intWorker::total = 0;//无需声明对象就可以将静态数据成员初始化
//
//voidmain()
//{
//Workerworker1, worker2;
//worker1.workTime(20);
//worker1.workTime(32);
//cout << "Total = " << Worker::total << endl;
//}
//
// 2.静态成员--->静态成员函数
// 静态成员函数可以直接引用该类的 静态数据成员 和 静态成员函数,但不能
// 直接引用 非静态数据成员 和 非 静态成员函数,否则编译报错
// 如果要引用,必须通过参数传递的方式得到对象名,然后再通过对象名引用
classPerson
{
private:
stringname;
staticintID;
public:
staticintnumber();
voidhello();
};


intPerson::ID = 1001;


intPerson::number()
{
return ID;
}


voidhello()
{
cout << "Hello, kitty" << endl;
}


voidmain()
{
Personp1;
cout << "类名引用:" << Person::number() << endl;
cout << "对象引用: " << p1.number() << endl;
}