[c++] 상속을 이용한 코드 재사용

상속은 객체 지향 프로그래밍에서 코드를 재활용하는 강력한 메커니즘입니다. 이번 포스트에서는 C++에서 상속을 이용하여 코드를 재사용하는 방법에 대해 알아보겠습니다.

상속이란?

상속은 기존 클래스의 특성과 동작을 새로운 클래스에서 다시 정의하지 않고 확장하는 방법입니다. 기존 클래스를 부모 클래스 또는 기본 클래스라고 부르고, 새로운 클래스를 자식 클래스 또는 파생 클래스라고 합니다.

상속의 장점

상속을 사용함으로써 코드를 재사용할 수 있습니다. 부모 클래스에 구현된 기능을 자식 클래스에서 다시 구현하지 않고도 사용할 수 있습니다. 또한, 부모 클래스에서 변경이 필요한 기능이 있는 경우 해당 부분만 변경하여 모든 자식 클래스에 적용할 수 있습니다.

상속의 구현

class BaseClass {
public:
    void baseFunction() {
        // 기본 동작 구현
    }
};

class DerivedClass : public BaseClass {
public:
    void derivedFunction() {
        // 새로운 동작 추가
    }
};

위의 예제 코드에서 DerivedClassBaseClass를 상속받습니다. 따라서 DerivedClassbaseFunction을 사용할 수 있으며, 새로운 함수 derivedFunction을 추가로 구현할 수 있습니다.

종류별 상속

C++에서는 보호된 상속(protected inheritance), 비공개 상속(private inheritance), 공개 상속(public inheritance)을 제공합니다. 각각의 상속 방식에 따라 부모 클래스의 멤버에 접근 권한이 달라집니다.

마치며

상속은 코드를 재사용하고, 유지보수하기 쉽게 만들어줍니다. 그러나 과도한 상속은 복잡성을 증가시킬 수 있으므로 신중하게 사용해야 합니다. 상속의 적절한 활용은 좋은 객체 지향 설계를 만들어갈 수 있습니다.

참고 자료