friend
-> private의 접근 권한을 타 클래스에게 허용하는 문법
-> 은닉화를 위반하는 문법이라 잘 사용하지않음.
friend를 사용하여 다른 클래스 호출
#include "Girl.h"
class CBoy
{
public:
CBoy();
CBoy(int _a, int _b);
~CBoy();
public:
void Func();
void Girl_Func(CGirl* _girl);
private:
int m_iA;
int m_iB;
friend class CGirl;
};
friend를 사용하여 다른 클래스 안에 있는 함수 호출
#include "Girl.h"
class CBoy
{
public:
CBoy();
CBoy(int _a, int _b);
~CBoy();
public:
void Func();
void Girl_Func(CGirl* _girl);
private:
int m_iA;
int m_iB;
friend void CGirl::Boy_Func(CBoy* _boy);
};
friend 함수에서 호출된 클래스에서 호출한 클래스의 멤버 변수 및 함수에 접근이 가능하게된다.
CGirl : 호출된 클래스
CBoy : 호출한 클래스
'Programming > C++ Basic' 카테고리의 다른 글
C++ 객체 포인터 (0) | 2020.09.17 |
---|---|
C++ 상속성 (0) | 2020.09.17 |
C++ this 포인터, extern 키워드 (0) | 2020.09.16 |
C++ 복사 생성자(얕은 복사, 깊은 복사) (0) | 2020.09.16 |
C++ static과 클래스 , 멤버 함수 (0) | 2020.09.15 |