class Test
{
public:
Test(int xi, int yi, int zi) : ho() { x = xi; y = yi; }
protected:
int x;
int y;
public:
class hold
{
public:
hold() { val = 2; }
private:
int val;
public:
int value() const { return val; }
void setvalue(int s) { val = s; }
};
hold ho;
};
- 내포클래스는 원래의 클래스의 사용범위와 같다.
- 다른 클래스 안에 선언된 클래스를 내포 클래스라고 합니다.
- private안에 내포클래스가 있을 때에는 Test만이 내포클래스가 존재함을 알 수 있다.
- protected는 내포클래스가 있을 때에는 Test와 파생클래스만이 내포클래스가 존재함을 알 수 있다.
- public는 Test밖에서도 볼 수 있지만 클래스 제한자를 사용하여야한다. Test::hold x;
참고사이트 : https://blog.plorence.kr/530
'C++ > Basic' 카테고리의 다른 글
[C++] RTTI (0) | 2021.08.02 |
---|---|
[C++] 예외 처리 (2) | 2021.07.26 |
[C++] 프렌드 클래스 (0) | 2021.07.22 |
[C++] 템플릿 클래스 (0) | 2021.07.19 |
[C++] 다중 상속과 가상 기초 클래스 (0) | 2021.07.14 |