次の方法で共有


METHOD_PROLOGUE

適切なグローバル状態とエクスポートされたインターフェイスの呼び出し元のメソッド保持します。

METHOD_PROLOGUE(theClass, localClass )

パラメーター

  • theClass
    インターフェイス マップが実行されるクラスの名前を指定します。

  • localClass
    インターフェイス マップを実行するローカル クラスの名前を指定します。

解説

通常、 CCmdTargetによって実装されるインターフェイスのメンバー関数の派生オブジェクトが既に pThis のポインターの自動的な初期化を提供するには、このマクロを使用します。次に例を示します。

class CMySink : public CCmdTarget
{
public:
   CMySink();
   ~CMySink() {};

protected:
   DECLARE_INTERFACE_MAP()

   // The following block declares an inner class called 'XSinky'
   BEGIN_INTERFACE_PART(Sinky, ISampleSink)
      STDMETHOD(SinkFunc)();
   END_INTERFACE_PART(Sinky)
};
STDMETHODIMP_(ULONG) CMySink::XSinky::AddRef()
{
   METHOD_PROLOGUE(CMySink, Sinky);
   return pThis->InternalAddRef();
}

必要条件

ヘッダー: afxwin.h

参照

概念

MFC マクロとグローバル

テクニカル ノート 38: MFC/OLE IUnknown の実装

新しいドキュメント、ウィンドウ、ビューの作成