读书人

c++ 子类继承的静态变量,该怎么解决

发布时间: 2012-03-18 13:55:38 作者: rapoo

c++ 子类继承的静态变量
在c++中 子类继承了 父类的 静态变量时,
在子类中改变了这个 静态变量,是否也会影响到 父类的 静态变量

也就是 继承后 是否是同一个 变量


[解决办法]
是的
[解决办法]
做个测试,是一样的,其实也不可能不一样。
class foo1
{
public:
static string a;
};

string foo1::a = "foo1";

class foo2 : public foo1
{
};

int main(void)
{
foo1 t1;
foo2 t2;

cout<< "["<< t1.a<< "]"<< endl;
cout<< "["<< t2.a<< "]"<< endl;
t2.a = "foo2";
cout<< "["<< t1.a<< "]"<< endl;
cout<< "["<< t2.a<< "]"<< endl;

return 0;
}
[解决办法]
YES
Definitely
[解决办法]
一样的。
其实这样的问题你最好还是自己写个小程序验证一下。
[解决办法]
必然的
静态嘛

读书人网 >C++

热点推荐