COM印象记

    《From CPP to COM》,虽然只是一个很小的册子,但是深入浅出,把COM的实现从C++函数逐步推进到COM实例。短短1天时间,不太可能对COM有准确把握,只是把自己的理解写下来。
     1. 什么是interface?
     interface是COM中一个很重要的概念,那么它到底是什么呢?是一个对象的指针,还是类的成员函数指针?在传统C++中,interface总是与function相关的,在COM中也是如此吗?我们看一段代码:
     

以下内容为程序代码:

HRESULT CDB::QueryInterface(REFIID riid, void** ppObject) 
{
    if (riid==IID_IUnknown || riid==IID_IDB) 
    {
        *ppObject=(IDB*) this;
    }
    else 
    {
        return E_NOINTERFACE;
    }

    AddRef();

    return NO_ERROR;
}

发表评论

您的电子邮箱地址不会被公开。