接口如c ++中的java?

Tra*_*all 3 c++ java interface

可能重复:
如何在C++中声明接口?

有人问我一个问题:"在C++中没有像java这样的接口.但事件那么你可以在c ++中实现它们,你会怎么做?"

怎么样?我会用虚方法创建一个类.这看起来像java中的接口或?

谢谢

xan*_*xan 9

您可以使用多重继承在C++中创建接口.

您创建一个纯虚拟的基类(所有函数= 0),然后您的类继承自此类.

多重继承意味着您可以根据需要继承多个这样的继承.

// Interface definition
class ISomethingable
{
public:
    virtual ~ISomethingable() {}
    virtual void DoSomething() = 0;    
}

// Your code
class MyClass : public ISomethingable
{
public:
    void DoSomething()
    {
         // Do something concrete.
    }
}
Run Code Online (Sandbox Code Playgroud)

另请参阅:如何在C++中声明接口?