佚名通过本文主要向大家介绍了ccomptr,ccomptr 头文件,ccomptr idispatch,ccomptr 用法,atl等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: 疑问 ATL的CComPtr与CComQIPtr
描述:
描述:
仔细比较ATL的CComPtr与CComQIPtr的成员函数,有很多相同之处。但是微软为何要分别定义
template <class T> CComPtr;
template <class T, const IID* piid = &__uuidof(T)> class CComQIPtr;
而不是:
template <class T, const IID* piid = &__uuidof(T)> class CComQIPtr :public CComPtr<T>;
如果这样很多相同功能函数都可以通过继承来使用了,而不需要分别在两个类中定义的相同功能成员函数。
我没想明白,是否有达人给个理由先 谢谢!
如果大家有兴趣可以一起讨论 共同进步 所以不给分的。
如果为分而来 那会失望的。。。
您可能想查找下面的文章:
- 为什么用CComPtr<IObj>创建的对象不能Release,而用IObj创建对象指针,就可以Release?
- CComPtr与_com_ptr_t模板
- CComPtr什么时候需要release?
- 程序中用了CComPtr的话,还需要CoInitialize和CoUninitialize吗?
- CComPtr未定义;atlcomhrequiresatlbasehtobeinclud
- CComQIPtr比CComPtr的好处在于哪里?不再需要显示调用QueryInterface了?
- CComPtr指针的构造函数是不是已经包含了CoCreateInstance了?
- _ApplicationPtr和CComPtr的区别
- CComPtr<I>sp能否作为函数参数传递?
- "focus”:不是“ATL::_NoAddRefReleaseOnCComPtr<T>”的成员的原因?