创建一个包含 subclass 的 class 向量

creating a class vector that contains subclass

我有一个向量,我想在其中存储子类。但我面临的问题是它给我一个错误。 我将 here 作为参考,但现在我收到此错误:

Error: "Subclass::Subclass" (declared at...) is inaccessible.

我的代码如下:

class SuperClass
{
 public:
    SuperClass() {}
    ~SuperClass() {}

};
class SubClass : public SuperClass
{
   SubClass() {} //there is no .cpp
   ~SubClass() {}
};

int main()
{
    std::vector<SuperClass*> superClass;
    superClass.push_back(new SubClass());
    return 0;
}

class 的默认访问类型是 private。因此,Subclass的构造函数和析构函数都是private。在它们之前添加 public 访问说明符。

class Subclass : public SuperClass{

     // Add this
     public:

        SubClass() {} //there is no .cpp
       ~SubClass() {}
  };