IClassFactory::CreateInstance方法的pUnkOuter参数背后是什么原因?

HRESULT CreateInstance(
  [in]   IUnknown *pUnkOuter,
  [in]   REFIID riid,
  [out]  void **ppvObject
);

MSDN的pUnkOuter参数说明如下:



各位好人,请您告诉我此参数的作用是什么?

最佳答案

请参阅COM基础知识中的Aggregation。如果创建作为聚合一部分的COM对象的实例,则必须提供所谓的“外部IUnknown”,即所有者COM对象接口(interface)。

08-27 17:36