继承:访问另一个类的私有和公共部分

Inheritance: Access both private and public parts of another class

本文关键字:公共部 访问 另一个 继承      更新时间:2023-10-16

我的作业告诉我在子类中使用父类中的私有和公共部分。

但是做类似的事情

class CarInsurance: public Insurance, private Insurance
{
public:
//some stuff...
private:
//some more stuff...
}

是同一类的副本,这是不可能的。

有没有其他方法可以在不必创建多个子类的情况下做到这一点?我只想有一个子类,它可以同时使用父类中的公共和私有部分。

是的,您可以通过一起与班级交朋友来做到这一点。

这个概念是:

class Insurance
{
// among other things add this line (doesn't matter if its public, protected or private)
friend class CarInsurance;
}
//////////////////////////
class CarInsurance: public Insurance // we need public here
{
public:
//some stuff...
private:
//some more stuff...
}