静态成员变量
编译阶段分配内存所有对象共享数据可以通过对象访问、通过类名访问有权限控制类内声明,类外初始化(通过类名访问是会不调用构造函数)class Person{public:Person(){}static int age;}int Person::age=0;
c++静态成员方法
可以访问静态成员变量,不可以访问普通成员变量普通成员函数可以访问静态成员变量和普通成员变量静态成员函数也有权限可以通过对象访问,也可以通过类名进行访问class Person{public:Person(){}static void show(){cout<<age<<endl;}static int age;}int Person::age=10;//通过类名访问Person::show();//通过对象访问Person p1;p1.show();
单例模式(静态的应用)
单例模式是一种常用的软件设计模式,在它的核心结构中只包含一个被称为单例模式。
构造方法私有化
成员变量私有化
拷贝构造函数私有化
class ChairMan{private://构造函数ChairMan(){cout << "创建了" << endl;}//拷贝构造函数ChairMan(const ChairMan& c){}public:static ChairMan* getInstance(){return singleMan;}//指针在类内声明private:static ChairMan* singleMan;};//指针在类外初始化ChairMan* ChairMan::singleMan = new ChairMan;