第十一章 C++编程之类的静态成员
11.1 静态成员的意义
类的静态成员:静态成员变量属于所有的类。
11.2 示例代码
静态成员示例代码
#include <iostream>
#include <string.h>
#include <unistd.h>
using namespace std;
class Animal{
private:
int age;
char *name;
static int cnt;
public:
Animal(char *name ,int age){
this->age = age;
this->name = name;
}
static int get_Cnt(){
return cnt;
}
void setAge(int age)
{
if(age<0)
age=0;
this->age = age;
}
void setName(char *name)
{
this->name=name;
}
void printInfo(void)
{
cout << "my name is " << name << ",age is " << age << endl;
}
};
int Animal::cnt = 5;//静态成员定义、分配空间和初始化
int main(int argc ,char**argv)
{
Animal tiger1("tiger1:daoba",10);
Animal tiger2("tiger2:daoba",10);
Animal tiger3("tiger3:daoba",10);
Animal tiger4("tiger4:daoba",10);
//通过类获取该类被定义的次数
cout << "cnt = " << Animal::get_Cnt() << endl;
}
11.3 总结
类的静态成员变量在使用前需要进行单独的定义、分配空间和初始化(定义了类的静态变量,但是该变量没有分配空间);
使用类的静态方法,使用方式是:类名::静态方法。