저는 C++을 정말 오랜 시간 사용하지 않았습니다.이 질문은 어리 석으나 실제로 도움이 될 수 있습니다.C++의 기본 클래스 개인 멤버에 액세스
내 기본 클래스에 개인 데이터 멤버가 있고 파생 클래스가 공개 된 경우 기본 클래스의 전용 멤버는 상속되지 않습니다. 그러나 상속 된 공용 함수를 통해 액세스 할 수 있습니다. 예 : 다음과 같이
class B{
int a,b;
public:
void SetA(int);
int GetA();
};
class D:public B{
public:
SetAAttribute(int x)
{ SetA(x); }
}
지금, 내 질문은 : 기술적으로는, 파생 클래스 객체가 그들에 정의 된 '는'속성이 없습니다. 평범한 용어로, 애트리뷰트가 첫 번째 위치에 존재하지 않을 때 기본적으로 엔티티에 속성을 설정하고 있습니다. 그런 개념을 상상하기는 쉽지 않습니다. 나는 이것을 정확하게 이해 했는가?
추가 설명이나 수정을 부탁드립니다.
'a'속성이있는 경우 비공개이므로 직접 액세스 할 수 없습니다. –
기본 클래스 멤버를 상속되도록 'protected'로 설정할 수 있지만 그렇지 않은 경우에는 private 속성을 가질 수 있습니다. – chris