C#의 친구
클래스의 friend 함수는 해당 클래스의 범위 외부에서 정의되지만 클래스의 모든 private 및 protected 멤버에 액세스할 수 있는 권한이 있습니다. 친구 함수의 프로토타입이 클래스 정의에 나타나더라도 친구는 멤버 함수가 아닙니다.
친구는 함수, 함수 템플릿, 멤버 함수 또는 클래스나 클래스 템플릿이 될 수 있으며, 이 경우 전체 클래스와 모든 멤버가 친구입니다.
C#의 friend에 해당하는 C++
가장 가까운 방법은 외부 클래스 개인 멤버에 액세스하는 중첩 클래스를 만드는 것입니다.
여기에서 내부 클래스는 외부 클래스 개인 멤버에 액세스할 수 있습니다. -
class Outer { class Inner { } }