본문 바로가기
Programming/C/C++

C++ 상속시의 접근제어 지시자

by bbolmin 2013. 3. 9.

 

멤버 변수에서의 접근제어 지시자의 의미는 아래와 같다.

 

private : 클래스 내부에서만 접근가능. -> 상속시에는 멤버함수로만 접근

protected : 클래스 내부에서만 접근가능. -> 상속시에도 클래스 내부에서 접근 가능.

public : 클래스 밖에서도 접근가능.

 

상속시에 접근제어 지시자는 접근 범위가 더 넓은 멤버를 제어하는데 사용한다.

 

ex1)

class Parent

{

private a;

protected b;

public c;

}

 

class Chlid : protected Parent

{

...

}

 

위의 경우에서 Child가 Parnet를 protected로 상속했으므로 protected보다 더 넓은 public c를 protected c로 상속한다는 의미가 된다.

[*] 상속시 해당 클래스에서 접근 가능한 멤버는 protected와 public 뿐이다. 그러므로 private에 대해서는 상속시 단순히 접근 불가로 생각하면 된다.

 

ex2)

class Parent

{

private a;

protected b;

public c;

}

 

class Chlid : private Parent

{

...

}

 

그러면 private으로 상속하는 경우에는 protected b, public c가 각각 private b, private c가 된다. 

(물론 private a에 대해서는 그냥 접근 불가..)

 

 

 

 

'Programming > C/C++' 카테고리의 다른 글

C++ 상속시 생성자, 소멸자의 호출  (0) 2013.03.09
복사 생성자  (0) 2013.02.27
C++ 기초 [3]  (0) 2013.02.27
C++ 기초 [2]  (0) 2013.02.26
C++ 기초 [1]  (0) 2013.02.26