C++はどのように1つのインタフェースクラスを実現します

890 ワード

げんり
C++では,クラスによってオブジェクト向けのプログラミングが実現され,ベースクラスでは純虚関数の宣言のみが与えられ,派生クラスでは純虚関数の具体的な定義が実現されるようにインタフェースが実現され,異なる派生クラスではインタフェースが実現される方式が異なり,多態が実現される.
インプリメンテーション
  • ベース
  • class Person  
    {  
    public:  
        Person():m_StrName("###") //           
        {};  
        virtual ~Person(){};  
        virtual void Eat()=0;//        
        virtual void Sleep()=0;//       
        virtual void SetName(const string strName)=0;//       
        virtual string GetName()=0;//      
        virtual void Work()=0;//         
    private:  
        string m_StrName;  
    };  
    
  • 派生クラス
  • class Student:public Person  
    {  
    public:  
        Student():m_strName("***")  
        {};  
        ~Student()  
        {};  
        void Eat();  
        void Sleep();  
        void SetName(const string strName);  
        string GetName();  
        void Work();  
    private:  
        string m_strName;  
    };