接口与c ++中的java一样?

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

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

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

谢谢

您可以使用多重inheritance在C ++中创建接口。

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

多重inheritance意味着您可以根据需要inheritance多个这样的inheritance。

// Interface definition class ISomethingable { public: virtual ~ISomethingable() {} virtual void DoSomething() = 0; } // Your code class MyClass : public ISomethingable { public: void DoSomething() { // Do something concrete. } } 

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

是的,只需创建一个没有成员变量和纯虚函数的类。

C ++中的接口将是一个抽象基类 – 无法实例化的基类 。 与java接口不同,它们实际上可以具有部分实现和成员变量。