我想将对象本身推回类的静态成员变量。但是我得到“未解决的外部符号”。我的想法是将选定的对象收集在容器中。

class ActionClass
{
public:
    ActionClass();
    ~ActionClass();
    int addAction();

private:
    static std::vector<ActionClass* const> instances;
};

int ActionClass::addAction()
{
    instances.push_back(this);
    return 0;
}

ActionClass::ActionClass()
{
}

ActionClass::~ActionClass()
{
}

最佳答案

您必须在以下cpp文件之一中定义此静态变量:

std::vector<ActionClass* const> ActionClass::instances;

09-25 18:04