静态成员
1. 基础知识
静态成员就是在成员变量和成员函数前加上关键字static
,称为静态成员
静态成员分为:
- 静态成员变量
- 所有对象共享同一份数据
- 在编译阶段分配内存
- 类内声明,类外初始化
- 静态成员函数
- 所有对象共享同一个函数
- 静态成员函数只能访问静态成员变量
2. 静态成员变量
声明及初始化:
class Person{
static int m_A;
};
int Person::m_A = 100;
两种访问方式:
- 通过对象进行访问:
p.m_A;
- 通过类名进行访问:
Person::m_A
注意事项:
- 静态成员变量也有访问权限
3. 静态成员函数
声明及初始化:
class Person{
static void func(){
cout<<"static void func调用"<<endl;
}
};
两种访问方式:
- 通过对象访问:
p.func()
- 通过类名访问:
Person::func()
注意事项:
- 静态成员函数只能访问静态成员变量
- 静态成员函数也有访问权限