Унаследована ли дружба на С++? Предположим, что у меня есть класс Base: class Base { friend SomeOtherClass; }; И есть другой (другой) класс, который наследует от Base: class AnotherClass : public Base {} Унаследована ли дружба? Ответ 1 В принципе, производный класс наследует каждый элемент базового класса, за исключением: * its constructor and its destructor * its operator=() members * its friends Итак, нет. Друзья не наследуются. Ответ 2 Нет, это не так. Изменить: Чтобы привести цитату из стандарта С++, раздел 11.4/8 Дружба не наследуется, ни транзитивно. Ответ 3 Нет, это не так, как описано здесь: http://www.parashift.com/c++-faq-lite/friends.html#faq-14.4
Ответ 1 В принципе, производный класс наследует каждый элемент базового класса, за исключением: * its constructor and its destructor * its operator=() members * its friends Итак, нет. Друзья не наследуются.
Ответ 2 Нет, это не так. Изменить: Чтобы привести цитату из стандарта С++, раздел 11.4/8 Дружба не наследуется, ни транзитивно.
Ответ 3 Нет, это не так, как описано здесь: http://www.parashift.com/c++-faq-lite/friends.html#faq-14.4