문제

내가 a가 있다고 가정 해 봅시다 Base 수업:

class Base {
    friend SomeOtherClass;
};

그리고 상속하는 또 다른 (다른) 클래스가 있습니다. Base:

class AnotherClass : public Base {}

우정도 상속되어 있습니까?

도움이 되었습니까?

해결책

원칙적으로 파생 클래스는 다음을 제외한 기본 클래스의 모든 구성원을 상속합니다.

* its constructor and its destructor
* its operator=() members
* its friends

그래서 안돼. 친구는 상속받지 않습니다.

다른 팁

아니요.

편집하다: C ++ 표준, 섹션 11.4/8의 인용

우정은 상속되거나 전이적이지 않습니다.

여기에 문서화 된대로 그렇지 않습니다. http://www.parashift.com/c++-faq-lite/friends.html#faq-14.4

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top