Programming Language/C++

06-2 클래스와 함수에 대한 friend 선언

JTesseract 2019. 7. 15. 12:21

friend

-클래스의 friend 선언(A클래스가 B클래스 대상으로 friend 선언하면, B클래스는 A클래스의 private 멤버에 접근 가능, 역은 불가능)  

-함수의 friend 선언(함수에 선언하면 자신이 선언된 클래스의 private 영역에 접근이 가능)

 

클래스 friend선언 예시

 

 

멤버함수, 전역함수 friend선언 예시

*friend void ShowPointPos(cosnt Point&);

-이 문장에는 2가지 의미가 있다

1.ShowPointPos라는 함수가 있다!

2.이 함수를 friend선언 하겠다

-따라서, friend선언을 위해서 별도의 함수원형을 선언할 필요는 없음

 

*friend선언은 필요한 상황에서만 극히 소극적으로 사용해야함

-정보은닉 해침, coupling강해짐