ATL内部创建COM对象

假如接口为IA,其类为CA,在内部创建此COM Object的标准方法:

CComObject<CA> * pObjA;

CComObject<CA>:: CreateInstance(&pObjA);

//此时pObjAm_dwRef=0;所以如果要使用必须AddRef或者QueryInterface来增加引用,否则在与其它类组合使用的时候(其它类是按规范进行操作),会导致对象因为引用少于0而被delete

当然除了CComObject外,还有其它类似的Wrapper,如CComObjectStack,这个是应用于栈上。

你可能感兴趣的:(object,delete,wrapper)