接口类使用的一些准则

  1. 接口类的定义

  接口类是一种特殊的类,它只提供方法的声明,方法的定义在子类中完成;同时接口类无法被实例化。

  2.  接口类的特征

  • 最好不要有成员变量,但可以有静态常量,表示各种返回状态;
  • 要有纯虚接口方法,让接口成为纯虚类,使之无法完成实例化;
  • 要有虚析构函数,并提供默认实现,这个主要是为了防止子类动态申请的内存出现泄露;
  • 不要声明构造函数,因为接口类无需初始化,使用默认构造函数即可;

示例代码如下:

#include <iostream>

using namespace std;

class bird {
public:
    virtual void fly() = 0;
    virtual string getColor() = 0;
    virtual ~bird() {
        cout << "~ bird" << endl;
    }
};

class maiQue :public bird {
public:
    void fly(){
        cout << "maiQue fly" << endl;
    }
    string getColor(){
        return "hei se";
    }
};

class xiQue :public bird {
public:
    void fly(){
        cout << "xiQue fly" << endl;
    }
    string getColor(){
        return "hong se";
    }
    ~xiQue(){
        cout << "~ xiQue" << endl;
    }
};
原文地址:https://www.cnblogs.com/JsonZhangAA/p/14858430.html