描述:
一个定义
CComQIPtr pEnum( resultV.punkVal );
报错
error C2955: 'CComQIPtr' : use of class template requires template argument list
c:\program files\microsoft visual studio\vc98\atl\include\atlbase.h(715) : see declaration of 'CComQIPtr'
此CPP已经包含了 #include <atlbase.h>
如何解决,谢谢?
其实我最终目的是解决JS传到VC里的数组参数问题,谁有这方面的例子?再次感谢
信箱mainblue@sina.com
谢谢
解决方案1:
哎,都是上星的大哥啊
看来来错地方了
需要这样写:
CComQIPtr<IEnum, &IID_Enum> pEnum( resultV.punkVal );
差不多等同于:
HRESULT hr;
IEnum *pEnum;
if( FAILED( hr = resultV.punkVal->QueryInterface( IID_IEnum, (void **)pEnum ) ) )
{
return hr;
}
当然,使用这中方式可以不考虑pEnum释放问题!
http://community.csdn.net/Expert/FAQ/FAQ_Index.asp?id=188114