【发布时间】:2015-07-05 10:58:43
【问题描述】:
所以我有一个带有两个派生类(deriv1 和 deriv2)的基类。 在 deriv2 类上,我需要从 deriv1 访问私有成员... 我该怎么做?
示例代码:
class base
{
private:
public:
base() {};
~base() {};
};
class deriv1 : public base
{
private:
int m_member1;
public:
deriv1() {};
~deriv1() {};
};
class deriv2 : public base
{
private:
int m_member2;
public:
deriv2() {};
~deriv2() {};
int sum_members_because_yes(void)
{
return (deriv1::m_member1 + m_member2); // <---- :((
}
};
如何从另一个派生类访问私有成员? 我试图避免使用朋友功能,或将私人成员更改为公开...您有什么建议?
谢谢! :)
【问题讨论】:
-
您只能访问派生类中的公共或受保护成员。
-
deriv2没有理由包含来自deriv1的字段。你想建模什么?
标签: c++ inheritance private-members