C++使用接口基本实现方式解析

C++编程语言的应用对于开发人员来说是一个非常有用的应用语言。不过其中还有许多比较高深的内容值得我们去花大量的时间去学习。在这里就先为大家介绍一下有关C++使用接口的实现方法。

面向对象的语言诸如JAVA提供了Interface来实现接口,但C++却没有这样一个东西,尽管C++ 通过纯虚基类实现接口,譬如COM的C++实现就是通过纯虚基类实现的(当然MFC的COM实现用了嵌套类),但我们更愿意看到一个诸如 Interface的东西。下面就介绍一种解决办法。

首先我们需要一些宏:

//  


// Interfaces.h  


//  


#define Interface class  


#define DeclareInterface(name) Interface name { \  


public: \  


virtual ~name() {}  


#define DeclareBasedInterface(name, base) class name :  


public base { \  


public: \  


virtual ~name() {}  


#define EndInterface };  


#define implements public 

有了这些宏,我们就可以这样定义我们的接口了:

//  


// IBar.h  


//  


DeclareInterface(IBar)  



virtual int GetBarData() const = 0;  



virtual void SetBarData(int nData) = 0;  


EndInterface 

是不是很像MFC消息映射那些宏啊,熟悉MFC的朋友一定不陌生。现在我们可以像下面这样来实现C++使用接口这一功能:

相关推荐