열렬히.뛰기

상속과 접근제한자

Language > 프로그래밍 언어 > C++ > Cpp : 기초 > 상속과 접근제한자

상속하기

cpp의 상속 예시코드

cpp
class Student {
public:
	std::string name;
	student(name) : name(name) {}
}

class Inchoi : public Student {
public:
	int class;
	Inchoi(name, class) : Student(name), class(class) {}
}
  • 상속은 : 로 하면 된다.
  • 물론, : 기호는 초기화에 쓰이기도 한다.
    • 둘을 같이 엮어서 갈 수도 있긴 하다.
  • 상위 클래스 초기화 → 이후 내 클래스 멤버 초기화

접근 제한자

접근 제한자의 종류

한 클래스에 선언된 함수와 멤버의 접근 권한을 조정하는 역할이다.

  • public : 외부에서 접근 가능
  • protected : 내부 + 상속된 클래스에서만 접근 가능
  • private : 내부에서만 접근 가능

상속과 접근 제한자

cpp
class Student : public Human {...}
// Human의 public으로 선언된 멤버를 쓸 수 있음.

class Teacher : protected Human {...}
// Human의 public과 protected에 접근 가능.

class Admin : private Human {...}
// Human의 모든 것에 접근 가능

다중상속

mermaid
flowchart LR
		a --> b & c--> d

부모 클래스가 2개 이상인 경우를 다중상속이라고 한다.

  • 보통 다음과 같이 다아이몬드 모양으로 상속되는 경우가 많다.