c++ - 类的静态成员存在于任何对象之外,对象中不包含任何与静态数据成员有关的数据?
天蓬老师
天蓬老师 2017-04-17 12:09:10
0
1
697

书上看到这句话,我觉得明显写错了,大家怎么看?
比如calculate()就包含interestRate成员

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(1)
黄舟

书上写的没错。书上的意思并不是类的对象无法访问到类的静态成员,而是说对象中不会存储任何类的静态成员。当对象需要访问静态成员时,先找到类本身,然后访问其中的静态成员。

所以在你的例子中,owneramount是存在于对象中的,而interestRate则存在于类中。访问此静态变量时,需要先找到类,再找到该变量。

因为一个类的静态成员是所有对象共享的,所以如果存储到每个对象中,当一个对象修改了该变量后,其他对象将无法看到修改后的结果,这与静态成员的特点是不相符的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板