c++ protected 예제

구문에 차이가 있는 것 외에도 개인 상속은 보호된 상속보다 제한적이며 그 차이는 중요하다는 것을 배웠습니다. 다음 장에서 파생 된 클래스와 상속을 배우게 됩니다. 지금은 부모 클래스 상자에서 하나의 자식 클래스 SmallBox를 파생 한 다음 예제를 확인할 수 있습니다. 클래스에는 여러 개의 공용, 보호된 섹션 또는 개인 레이블이 지정된 섹션이 있을 수 있습니다. 각 섹션은 다른 섹션 레이블 또는 클래스 본체의 닫는 오른쪽 중괄호가 표시될 때까지 유효합니다. 멤버 및 클래스에 대한 기본 액세스는 비공개입니다. 공개, 보호 및 개인 상속의 의미에 대한 파생 클래스를 참조하십시오. 예를 들어, 클래스 멤버는 섹션, 개인 보호 및 공용으로 그룹화됩니다. 이러한 키워드를 클래스 멤버의 접근성 또는 가시성 수준을 정의하는 액세스 지정자라고 합니다. 액세스 지정자는 개인 또는 보호 또는 공용일 수 있습니다. 일반적으로 액세스 지정자는 기본 클래스에서 다른 하위 클래스를 파생하는 동안 부과된 액세스 제한입니다. 이 두 가지 예제에서 이러한 유형의 상속이 구현되는 방법을 배웠습니다.

보호된 키워드는 다음 액세스 지정자(공개 또는 개인) 또는 클래스 정의 의 끝까지 멤버 목록의 클래스 멤버에 대한 액세스를 지정합니다. 보호된 것으로 선언된 클래스 멤버는 다음에서만 사용할 수 있습니다. 다음 표는 이러한 차이점을 보여 줍니다: 이것에서 우리는 개인 상속으로 상속의 사슬을 끊어야 하는지 아니면 보호된 상속으로 구현을 유지해야 하는지 알 수 있습니다. 보호된 또는 개인 구성원에게 추가 함수 또는 클래스에 대한 액세스 권한을 부여하기 위해 우정 선언을 사용할 수 있습니다. 이 경우 기본 클래스의 멤버는 개인 멤버를 제외한 파생 클래스 내에서보호된 멤버로만 사용할 수 있습니다. 이 경우 부모 클래스에서 보호 상속을 사용했으며 체인 상속의 두 번째 계층에서 개인 상속을 사용했다면 오류 메시지가 나타납니다. . 위의 표에서 볼 수 있듯이 개인 상속은 가장 제한적이며 보호된 것은 개인 형식과 공용 형식 사이에 있습니다.

개인 상속을 사용하는 방법을 이해하기 위해 상위 클래스와 자식 클래스의 두 클래스를 사용하는 다음 예제 프로그램을 살펴보겠습니다. 다음 예제는 위의 예제와 유사하며 여기서 너비 멤버는 파생 클래스 SmallBox의 모든 멤버 함수에서 액세스할 수 있습니다.

Por
agosto 2, 2019