www.cftea.com

派生类与基类的 static 共享

ITPOW2019/3/20 11:59:52

显示结果是 abc、123,因为 new D() 时,通过构造函数改变 P 的值,而 static 变量在派生类、基类中共享,所以后面再调用 B.P 时,值就变了。

如果要分开,应该这样写:

这样双方的 static 就不相互影响了,不论 D 中如何改变 P,B.P 都不受影响。

static 继承吗?也就是说,假如上述代码中:B 有 P,但是 D 没有,那么可以用 D.P 吗?答案是可以的,也就是说是继承的。

如果使用 const 也是一样的。

另外,static、const 都不支持 virtual、override。

相关阅读

<<返回首页<<