본문 바로가기

Language, IDE/C, C++

[C++] 프렌드 함수

C++ 프렌드 함수


프렌드 함수란

클래스의 멤버 함수는 아니지만 클래스에 friend 함수라고 선언을 해줌으로써 클래스의 멤버 함수처럼 private 멤버에 접근할 수 있는 함수이다.

일반함수뿐만 아니라 연산자 오버로딩또한 프렌드 함수로 구현할 수 있다.

프렌드 함수는 하나 이상의 클래스와 프렌드 함수가 될 수 있다.

 

프렌드 함수는 클래스 정의부분에 friend 키워드를 사용하여 정의하고

실제 구현부분에서는 키워드를 사용하지않고 일반 함수와 똑같이 구현한다.

 

 

그림과 같이 MyClass의 멤버 함수가 아닌 friendFunction을 friend함수로 선언해줌으로써 MyClass의 멤버변수인 member를 접근할 수 있게 되었다.

friendFunction함수는 MyClass의 멤버 함수가 아니기때문에 .연산 없이 호출하였다.



'Language, IDE > C, C++' 카테고리의 다른 글

[C/C++] C스트링  (0) 2013.06.30
[C++] 연산자 오버로딩  (0) 2013.06.28
[C++] 프렌드 함수  (0) 2013.06.28
[C++] 클래스 디폴트 접근 제어자  (0) 2013.06.26
[C++] .연산자와 ::연산자  (0) 2013.06.26
[C++] 디폴트 인자  (0) 2013.06.26