c++ 禁止创建对象的类

将类的构造函数声明在protected或private中,这样禁止了在类外访问构造函数,也就无法创建对象了。

一般是和单例模版类结合使用的,避免创建其他对象。

#include <iostream>
#include <string>

using namespace std;

class A
{
  public:
    string _name;
  protected:
    A(){};
    ~A(){};
};

int main (int argc, char *argv[]) {
  cout<<"hello"<<endl;
  A a;
  cout<<"done"<<endl;
  return 0;
}
文章目录