Наследование: доступ как к частной, так и к публичной части другого класса - PullRequest
0 голосов
/ 21 октября 2019

Мое задание говорит мне использовать как частную, так и открытую части родительского класса в дочернем классе.

Однако выполнение чего-то вроде

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

является дубликатом того же класса,что невозможно.

Есть ли другой способ сделать это без необходимости создавать несколько дочерних классов? Я просто хочу иметь один дочерний класс, который может использовать как открытые, так и закрытые части родительского класса.

1 Ответ

2 голосов
/ 21 октября 2019

Да, вы можете сделать это, подружившись с классами.

Понятие:

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...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...