인터페이스 만드는 법

인터페이스를 나타내는 클래스를 어떻게 설정해야하나요? 그냥 추상 클래스 쓰면 되나요?

1답변

  • 좋아요

    0

    싫어요
    채택취소하기

    pure virtual methods를 가지고 있는 클래스를 만드세요. pure virtual method를 멤버함수로 가지는 클래스는 추상 클래스라고 하는데, 추상 클래스는 정의되지 않은 멤버함수를 가지고 있기 때문에 인스턴스 생성이 불가능 합니다.

    이 추상 클래스를 상속받아 virtual methods를 오버라이드하면 됩니다.

    pure virtual method는 다음과 같이 virtual함수의 뒤에 "= 0"을 붙이면 됩니다.

    //인터페이스로 쓸 추상 클래스
    class Parent
    {
        public:
            virtual ~Parent() {}
            virtual void functionToOveride() = 0;
    };
    
    class Child : public Parent
    {
        public:
            virtual void functionToOveride()
            {
                ///...
            }
    };
    

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

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