如何定义一个接口(接口Interface只在COM组件中定义了,MFC和C++都没有接口的概念)


接口是COM中的关键词,在c++中并没有这个概念。接口是一种极度的抽象。接口用在COM组件中有自己的GUID值,因此定义接口时一定要指定它的GUID值。

实际上接口就是struct,即#define interface struct

一、接口的定义步骤:

0.包含头文件:#include "afxtempl.h"

1.定义一个GUID值:static const IID IID_IFunction={guid value}

2.声明一个接口:DECLARE_INTERFACE_(IFunction,IUnknwon),该宏表示:struct _declspec(novtable) IFunction:public IUnknown

3.写接口中定义的函数。

总之就是:

static const IID IID_IFunction ={guid value};

DECLARE_INTERFACE_(IFunction,IUnknown)

{

STEMETHOD(show)(CString str,int a) PURE;//你要定义的接口方法
}

这样一个接口就定义好了。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM