佚名通过本文主要向大家介绍了关于COM基础学习的问题等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 关于COM基础学习的问题
描述:
解决方案1:
描述:
IUnknown * pIUnknown = NULL
IUnknown * pIUnknown2 = NULL
CreateInstance(CLSID_Stopwatch,IID_IUnknown,(void **)&pIUnknown);
pIUnknown2 = pIUnknown;
//ADDRef() not called because lifetime of pIUnknown wraps
请问上面这句解释的话是什么含义 我知道字面意思 但为什么ADDREF() 没有调用呢?
解决方案1:
从C++的语义来讲,这只是一个指针的赋值(复制),并不是CreateInstance那样的创建实例,所以这个赋值并没有对原有的COM对象产生任何影响,因而也不会调用AddRef增加COM对象的引用计数。