자식 클래스에서 부모 클래스 함수를 어떻게 부르죠?

자식 클래스에서 부모 클래스의 멤버 함수를 부를 수 있는 방법이 있나요? 밑에서 call_print_in_Base를 어떻게 구현할 수 있나요?

소스코드

class Base{
public:
    void print() { cout << "i'm base!" << endl; }
};

class Derived : public Base{
public:
    void print() {
        call_print_in_Base() ///<-여기
        cout << "i'm Derived!" << endl;
    }
};

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    C++은 다중 상속을 지원하기 때문에 모호함을 없애기 위해 자바superC#base같은 base class 키워드가 없습니다. 대신 base class의 이름 뒤에 ::(콜론 2개)를 붙이지요.

    class Base{
    public:
        void print() { cout << "i'm base!" << endl; }
    };
    
    class Derived : public Base{
    public:
        void print() {
            Base::print();
            cout << "i'm Derived!" << endl;
        }
    };
    

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

작성한 답변에 다른 개발자들이 댓글을 작성하거나 댓글에 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.