[c++] 상속
C++은 객체지향 프로그래밍 언어로, 상속이라는 중요한 개념을 지원합니다. 상속은 기존 클래스로부터 새로운 클래스를 만들 때 사용되며, 기존 클래스의 속성과 동작을 새로운 클래스에 재사용할 수 있게 해줍니다.
기본 구문
C++에서는 상속을 구현하기 위해 :
기호를 사용합니다. 예를 들어, ChildClass
가 ParentClass
를 상속받는다면 아래와 같이 작성할 수 있습니다:
class ParentClass {
// 부모 클래스의 멤버 변수와 메서드들
};
class ChildClass : public ParentClass {
// 자식 클래스의 멤버 변수와 메서드들
};
위 예제에서 ChildClass
는 ParentClass
를 상속받았으며, 이는 ChildClass
가 ParentClass
의 모든 멤버 변수와 메서드들을 사용할 수 있음을 의미합니다.
다중 상속
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++에서도 강력한 기능을 제공합니다. 상속을 이용하면 코드의 재사용성이 높아지고, 유지보수가 용이해지는 등 여러 가지 이점을 얻을 수 있습니다.