C++ освоение наследования с открытым, защищенным и частнымC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 C++ освоение наследования с открытым, защищенным и частным

Сообщение Anonymous »

Я понимаю это и прошу вас поправить меня, пожалуйста:
правила видимости наследования классов C++ важны, если классы наследуются несколько раз, верно?

Код: Выделить всё

class Base {
public :
int a;
protected :
int b;
private :
int c;
};

class Layer_1 : private Base {  /* everything from ´Base´ is now */
int z{Base::a};             /* considered a private of ´Layer_1´ */
int r{Base::b};             /* but accessible here */
};

class Layer_2 : Layer_1 {   /* Nothing in ´Layer_1´ is accessible from */
int y{Layer_1::a};      /* ´Layer_2´,as ´Layer_1´ inherited everything */
};  // invalid ~~~~^        /* from ´Base´ into their private scope */
< /code>
[list]
[*] У них есть какие -либо другие цели? 
Я не могу стать публичным снова и т. Д. Правильно? На самом деле не имеет значения, как я наследуюсь от базы , поскольку я не наследую от слоя , правильно? Когда использовать общественный/защищенный/частный, или это будет решать по каждому отдельному случаю, и нет «правила»?
[/list]
Я надеюсь, что это не дубликат. Я посмотрел, но не было никаких сомнений, что ответил на эту конкретную часть для меня. Чтобы использовать различные ключевые слова.

Подробнее здесь: https://stackoverflow.com/questions/793 ... nd-private
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C++»