C++基本概念总结——构造函数的public/protected/private语义

来源:互联网 发布:欧洲历史 知乎 编辑:程序博客网 时间:2024/06/07 07:10

类的构造函数为 public 时,表明该类的对象可以被任意的创建。例如:

class PublicClass{public:PublicClass(){}};PublicClass *p = new PublicClass();


类的构造函数为 protected  时,无法通过上面的方法创建对象。protected 构造函数说明:该类是用于派生的。例如:

class ProtectedClass{protected:ProtectedClass(){}};class Derived : public ProtectedClass{public:Derived(){}};ProtectedClass *p = new Derived();


类的构造函数为 private 时,表明该类不能被派生。通常在 singleton设计模式中会使用 private 的构造函数,表明全系统只能有一个该类的对象。例如:

class PrivateClass{private:PrivateClass(){};public:static PrivateClass* GetInstance();};PrivateClass* PrivateClass::GetInstance(){static PrivateClass inst;return &inst;}PrivateClass *p = PrivateClass::GetInstance();
原创粉丝点击