接口与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接口不同,它们实际上可以具有部分实现和成员变量。