共用方式為


COM 介面進入點

對於 COM 介面的成員函式,使用 METHOD_PROLOGUE 巨集時呼叫已匯出的介面的方法,維持適當的全域狀態。

一般而言,實作介面的成員函式的CCmdTarget-衍生的物件已經使用此巨集,以提供自動初始化的pThis指標。 例如:

STDMETHODIMP_(ULONG) CMySink::XSinky::AddRef()
{
   METHOD_PROLOGUE(CMySink, Sinky);
   return pThis->InternalAddRef();
}

如需詳細資訊,請參閱技術的附註 38 上 MFC OLE/ IUnknown 的實作。

METHOD_PROLOGUE巨集定義為:

#define METHOD_PROLOGUE(theClass, localClass) \

theClass* pThis = \

((theClass*)((BYTE*)this - offsetof(theClass, m_x##localClass))); \

AFX_MANAGE_STATE(pThis->m_pModuleState) \

有關管理全域狀態的巨集的部分是:

AFX_MANAGE_STATE( pThis->m_pModuleState )

在此運算式中, m_pModuleState 會被假設為包含物件的成員變數。 它由存取關聯式資料庫CCmdTarget基底類別,而且會初始化為適當的值乘以COleObjectFactory,當物件具現化。

請參閱

概念

管理 MFC 模組的 「 狀態 」 資料