猿问

为什么拷贝能直接调用arr.m_iCount这个私有属性呢?

m_iCount = arr.m_iCount 这句很奇怪. 

命名已经设置了iCount是私有属性, 怎么能直接调用arr.m_iCount?? 


不该是用arr.getCount()这个public的访问器吗?

ImCheney
浏览 1143回答 1
1回答

onemoo

arr 和等号左侧的 m_iCount 所属的 class 是同样的类型吧?class 类型可以访问本类型的所有 private 成员,注意是“本类型的”。也就是既可以访问本变量中的 private 成员,也可以访问该 class 的其他实例中的 private 成员。所以如果 arr 是同样的 class,那么也可以直接访问 arr 中的 m_iCount。
随时随地看视频慕课网APP
我要回答