yog*_*tel 3 c++ inheritance interface
我想在cpp中创建接口,这样任何类实现该类,那么该类必须实现父类的函数.如果未实现所有功能,则必须显示错误.
class parent { // interface class
public :
virtual void display();
}
class base : public parent {
void display(); // this method must be implemented in this class
}
Run Code Online (Sandbox Code Playgroud)
请帮我在c ++中进行这种类型的继承.
使用纯虚拟成员函数:
virtual void display() = 0;
Run Code Online (Sandbox Code Playgroud)
这使得类抽象(你不能创建它的实例),并且任何非抽象派生类都必须实现这样的函数.
这是一个维基百科链接,其中包含更正式的定义:http: //en.wikipedia.org/wiki/Virtual_function#Abstract_classes_and_pure_virtual_functions
只有一个变化
class parent { // interface class
public :
virtual void display() = 0;
}
Run Code Online (Sandbox Code Playgroud)
这在C++中称为纯虚函数.