const IID IID_IUnknown
EXTERN_C const IID IID_IUnknown;

#if defined(__cplusplus) && !defined(CINTERFACE)

#if (_MSC_VER >= 1200)	// VC6 or greater
extern "C++"
{
#endif

    MIDL_INTERFACE("00000000-0000-0000-C000-000000000046")
	IUnknown
    {
    public:
        BEGIN_INTERFACE
        virtual HRESULT STDMETHODCALLTYPE QueryInterface( 
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void __RPC_FAR *__RPC_FAR *ppvObject) = 0;
        
        virtual ULONG STDMETHODCALLTYPE AddRef( void) = 0;
        
        virtual ULONG STDMETHODCALLTYPE Release( void) = 0;

#if (_MSC_VER >= 1200)	// VC6 or greater
		template <class Q>
		HRESULT STDMETHODCALLTYPE QueryInterface(Q** pp)
		{
			return QueryInterface(__uuidof(Q), (void**)pp);
		}
#endif    

        END_INTERFACE
    };

#if (_MSC_VER >= 1200)	// VC6 or greater
} // extern "C++"
#endif

阅读更多
文章标签: interface class c
个人分类: c++MFC学习笔记
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

const IID IID_IUnknown

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭