[C++ 문법] 'friend' 예약어
'friend' 예약어는 함수나 클래스 선언 앞에 작성할 수 있습니다. 'friend'로 선언한 함수나 클래스는 접근 제어 지시자의 영향을 받지 않습니다. 그리고 반드시 클래스 내부에서 friend 선언을 해야 합니다.
class MyData { private: int m_nData = 0; public: MyData(int nParam) : m_nData{ nParam } { /* do somthing */ } int GetData() const { return m_nData; } void SetData(int nParam) { m_nData = nParam; } friend void PrintData(const MyData&); // PrintData() 함수는 이제 MyData 클래스의 친구입니다. }; void PrintData(const MyData& rhs) { // private 접근 제어에 있는 m_nData 변수에 직접 접근합니다. cout << rhs.m_nData << endl; } void main() { MyData a{ 10 }; PrintData(a); }
'Programming > C C++' 카테고리의 다른 글
[C++ STL] '시퀀스 컨테이너 - list' (0) | 2019.05.27 |
---|---|
[C++ STL] '시퀀스 컨테이너 - vector' (0) | 2019.05.25 |
[C++ 문법] '추상 클래스' (0) | 2019.05.24 |
[C++ 문법] '소멸자 가상화' (0) | 2019.05.24 |
[C++ 문법] '가상 함수(virtual function)' (0) | 2019.05.23 |
댓글
이 글 공유하기
다른 글
-
[C++ STL] '시퀀스 컨테이너 - list'
[C++ STL] '시퀀스 컨테이너 - list'
2019.05.27 -
[C++ STL] '시퀀스 컨테이너 - vector'
[C++ STL] '시퀀스 컨테이너 - vector'
2019.05.25 -
[C++ 문법] '추상 클래스'
[C++ 문법] '추상 클래스'
2019.05.24 -
[C++ 문법] '소멸자 가상화'
[C++ 문법] '소멸자 가상화'
2019.05.24
댓글을 사용할 수 없습니다.