一个类的私有成员,怎样才能在这个类的派生类里被派生类的成员访问??

liun02 2003-11-19 10:40:48
一个类的私有成员,怎样才能在这个类的派生类里被派生类的成员访问??
...全文
60 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hpho 2003-11-20
  • 打赏
  • 举报
回复
还有一种方法是friend child class.
class D;
class B{
int i;
friend class D;
};
class D: public B{
/* ... */
};
liun02 2003-11-20
  • 打赏
  • 举报
回复
十分的谢谢大家。
现在我明白了。
谢谢!
xiaoyunet 2003-11-20
  • 打赏
  • 举报
回复
补充一点,报漏私有的成员就意味着开放了读写权限并且没有任何检查,报漏方法则可以提供权限控制并且可以做检查。因为子类的实现者可能不是基类的实现者。
xiaoyunet 2003-11-20
  • 打赏
  • 举报
回复
设成私有是为了隐藏实现啊,这个时很正常的,为自己提供保护的成员函数来进行访问就可以了,就像完美废人说得那样。
adams_here 2003-11-20
  • 打赏
  • 举报
回复
严重同意楼上。
北极猩猩 2003-11-20
  • 打赏
  • 举报
回复
既然是私有为什么要访问呢,既然要访问为什么射成私有的呢?
wwl_f117 2003-11-20
  • 打赏
  • 举报
回复
对,只能通过基类的接口来访问。
fierygnu 2003-11-20
  • 打赏
  • 举报
回复
如果基类不提供接口,是访问不了的。
Wolf0403 2003-11-19
  • 打赏
  • 举报
回复
如果需要控制读写权限就需要私有成员,然后用保护接口访问了。
class A
{
protected:
int GetData(void){return m_data;} // read-only property for derived class
private:
int m_data;
};
tuxw 2003-11-19
  • 打赏
  • 举报
回复
为什么一定要用私有而不用保护呢

64,683

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧