METHOD_PROLOGUE
更新 : 2007 年 11 月
エクスポート済みインターフェイスのメソッドを呼び出すときに、適切なグローバル状態を維持します。
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