c++ protected 예제

예제 프로그램을 시작하기 전에 개인 상속을 처음 처리한 것은 정말 오래 전이었다는 점을 지적하고 싶습니다. 실수로 부모 클래스 앞에 공용을 추가하지 않은 경우. 이러한 멤버를 원래 선언한 클래스에서 공용 또는 보호된 액세스 권한으로 파생된 클래스입니다. 이 경우 부모 클래스에서 보호 상속을 사용했으며 체인 상속의 두 번째 계층에서 개인 상속을 사용했다면 오류 메시지가 나타납니다. 공용 멤버는 수업 외부의 모든 곳에서 프로그램 내에서 액세스할 수 있습니다. 다음 예제와 같이 멤버 함수없이 공용 변수의 값을 설정하고 얻을 수 있습니다 – A 클래스는 여러 공개, 보호 또는 개인 레이블 섹션을 가질 수 있습니다. 각 섹션은 다른 섹션 레이블 또는 클래스 본체의 닫는 오른쪽 중괄호가 표시될 때까지 유효합니다. 멤버 및 클래스에 대한 기본 액세스는 비공개입니다. 보호된 멤버에 대한 포인터가 형성되면 해당 선언에서 파생 클래스를 사용해야 합니다. 다음 표에서는 이러한 차이점을 보여 줍니다: 이 경우 기본 클래스의 멤버는 개인 멤버를 제외한 파생 된 클래스 내에서 보호 된 멤버로만 사용할 수 있습니다. 일반적으로 개인 또는 보호된 상속보다는 봉쇄를 사용할 가능성이 높습니다.

이것에서 우리는 우리가 개인 상속으로 상속의 사슬을 끊어야하거나 보호 된 상속으로 구현을 유지해야한다는 것을 알게 될 것입니다. 많은 프로그래머의 경우 봉쇄가 더 나은 선택일 가능성이 높습니다. 개인 및 보호 상속은 우리가 너무 일관성을 존중해야하기 때문에 구현됩니다. 우리는 상속의이 유형은 또한 자신의 장소를 가지고 있다고 말할 수 있습니다. 액세스 수정자는 데이터 숨기기로 알려진 개체 지향 프로그래밍의 중요한 기능을 구현하는 데 사용됩니다. 실제 예를 생각해 보십시오: 10명의 고위 위원이 있는 인도의 비밀 정보 시스템을 고려해 보십시오. 따라서 10명이 서로 비밀 정보에 직접 액세스할 수 있지만, 이 10개 회원 이외의 사람은 이 정보에 직접 액세스할 수 없는 클래스 데이터 멤버 또는 멤버 함수로 10명이 외부 인원을 제외한 다른 사람이 없이는 정보에 직접 액세스할 수 없다고 생각할 수 있습니다. 권한이 있습니다. 이것이 데이터 숨기기입니다.

클래스의 액세스 수정자 또는 액세스 지정자는 클래스 멤버의 액세스 가능성을 설정하는 데 사용됩니다. 즉, 외부 함수에 의해 직접 액세스되지 않도록 클래스 멤버에 대한 몇 가지 제한을 설정합니다. 구문에 차이가 있는 것 외에도 개인 상속은 보호된 상속보다 제한적이며 그 차이는 중요하다는 것을 배웠습니다. 클래스 Base의 보호된 멤버는 보호된 또는 개인 구성원에게 추가 함수 또는 클래스에 대한 액세스 권한을 부여하기 위해서만 액세스할 수 있으며 우정 선언을 사용할 수 있습니다. 클래스를 만드는 동안 개인 액세스 지정자가 사용되는 경우 기본 클래스의 공용 및 보호된 데이터 멤버는 파생 클래스의 개인 멤버가 되고 기본 클래스의 개인 멤버는 비공개로 유지됩니다. 보호된 멤버 변수 또는 함수는 개인 멤버와 매우 유사하지만 파생 클래스라고 하는 자식 클래스에서 액세스할 수 있는 한 가지 추가 이점을 제공했습니다. 개인 상속을 사용하는 방법을 이해하기 위해 상위 클래스와 자식 클래스의 두 클래스를 사용하는 다음 예제 프로그램을 살펴보겠습니다. 공개, 보호 및 개인 상속의 의미에 대한 파생 클래스를 참조하십시오.