次の方法で共有


DECLARE_IUNKNOWN

DECLARE_IUNKNOWN マクロは、新しいインターフェイスの基底インターフェイスの 3 つのメソッドを宣言する。

構文

#define DECLARE_IUNKNOWN                                        \
    STDMETHODIMP QueryInterface(REFIID riid, void **ppv) {      \
        return GetOwner()->QueryInterface(riid,ppv);            \
    };                                                          \
    STDMETHODIMP_(ULONG) AddRef() {                             \
        return GetOwner()->AddRef();                            \
    };                                                          \
    STDMETHODIMP_(ULONG) Release() {                            \
        return GetOwner()->Release();                           \
    };

注意

新しいインターフェイスを作成する場合は、IUnknown から派生しなければならない。これには、QueryInterfaceAddRef、および Release の 3 つのメソッドがある。このマクロは、新しいインターフェイス用にこれらの各メソッドを宣言し、宣言プロセスを簡略化する。

参照

COM ヘルパー関数

CUnknown::GetOwner