如何定義一個接口(接口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