//静态成员变量
#include<iostream>
using namespace std;
//静态成员变量:没有拷贝,所有对象都共享一份数据。编译时就分配内存。类内声明,类外初始化。
class Person{
public:
//创建静态变量,类内声明,类外初始化,有访问权限
int static m_a;
private:
int static m_b;
};
//类外初始化
int Person::m_a=100;
int Person::m_b=200;
void main()
{
Person p;
//静态变量的访问方式,两种:通过对象名访问(常规方式)。另一种是通过类名访问:类名 类型标识符 变量名
cout<<p.m_a<<endl;
cout<<Person::m_a<<endl;
//cout<<Person::m_b<<endl;//此处会报错,静态成员变量也是有访问权限的,私有属性类外不可访问
}