c++中,在哪些情况下能调用一个类的具体对象的private属性的数据?

我知道在友元函数和友元类中可以,但是在该对象所属类的定义过程中,能调用此类的具体对象的private属性的数据吗?

从类外调用,只有友元可以,如果是继承关系的话,有个protect属性,继承类可以做到。另外,你可以做到间接暴露私有属性,比如,设置一方法,返回私有成员的地址,这样就可以通过指针来操作私有成员了,但是不是很推荐,数据封装不应该轻易破坏。
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-09-04
private 就好比你的日记本,别的任何人都不准看
protected 就好比你家的私事,你的家人能知道,外人是不能知道的
public这就不要讲了,公开的嘛
如果你要调用类内私有数据,那你可以在类内设置一个公有函数来返回这些数据.可以这样比喻:你想知道别人的私事,虽然那人不告诉你,但你可以通过一个知道他隐私的人打听.
相似回答