新手继承。 我试图在父类中定义一个向量,例如:
class Parent
{
public:
vector<Parent*>functions;
};
class child : public Parent
{
public:
int change_size()
{
functions.pushback(x)
return functions.size(); // here it changes to 1;
}
};
class child2 : public Parent
{
public:
int size() { return functions.size();}// here it is still 0;
};
从Parent类继承该向量时,我只能临时更改该大小(在该特定子类中)。有没有可能的方法可以全局(在所有其他子类中)更改它并将其保存到最新更新?
答案 0 :(得分:1)
您要找的是static
变量:
class Parent
{
public:
static vector<Parent*> functions;
};
然而,这是&#34;全球&#34;适用于所有类和其他对象。
请记住,static
变量必须在类之外实例化,这意味着在cpp文件中。
vector< Parent* > Parent::functions;