[c++] 상속

C++은 객체지향 프로그래밍 언어로, 상속이라는 중요한 개념을 지원합니다. 상속은 기존 클래스로부터 새로운 클래스를 만들 때 사용되며, 기존 클래스의 속성과 동작을 새로운 클래스에 재사용할 수 있게 해줍니다.

기본 구문

C++에서는 상속을 구현하기 위해 : 기호를 사용합니다. 예를 들어, ChildClassParentClass를 상속받는다면 아래와 같이 작성할 수 있습니다:

class ParentClass {
    // 부모 클래스의 멤버 변수와 메서드들
};

class ChildClass : public ParentClass {
    // 자식 클래스의 멤버 변수와 메서드들
};

위 예제에서 ChildClassParentClass를 상속받았으며, 이는 ChildClassParentClass의 모든 멤버 변수와 메서드들을 사용할 수 있음을 의미합니다.

다중 상속

C++에서는 다중 상속도 지원됩니다. 이는 하나의 클래스가 둘 이상의 클래스로부터 상속을 받을 수 있는 것을 의미합니다. 다중 상속은 다음과 같이 구현할 수 있습니다:

class ChildClass : public ParentClass1, public ParentClass2 {
    // 멤버 변수와 메서드들
};

가시성 제어

C++에서 상속된 멤버 변수와 메서드의 가시성은 public, protected, private 키워드를 사용하여 제어할 수 있습니다. 이를 이용하여 상속받은 멤버의 접근 권한을 제한할 수 있습니다.

class ParentClass {
public:
    int publicVar;
protected:
    int protectedVar;
private:
    int privateVar;
};

class ChildClass : public ParentClass {
    // 여기에서 상속된 변수와 메서드의 가시성을 조절할 수 있음
};

결론

상속은 객체지향 프로그래밍의 핵심적인 개념 중 하나로, C++에서도 강력한 기능을 제공합니다. 상속을 이용하면 코드의 재사용성이 높아지고, 유지보수가 용이해지는 등 여러 가지 이점을 얻을 수 있습니다.