在ATL中怎么不能用模板类作为参数?
来源:互联网 发布:淘宝店怎么刷信誉 编辑:程序博客网 时间:2024/04/30 03:28
ATL里函数为什么不能用模板类做参数?
比如这个形式就不行:
void SketchProfile(CComPtr<IFeature> &pFeat,CString&strPrt,CFile&prtFile);
因为有时候IFeature*和CComPtr<IFeature>在一定程度上可以等价,所以我将上面的改成下面的形式:
void SketchProfileIFeature* &pFeat,CString&strPrt,CFile&prtFile);
居然能够定义成功,我确实喜了一把,结果千辛万苦把代码放到这个函数,在别的函数里调用这个函数的时候,
调用如下:
void SketchProfile(pFeat,strPrt,prtFile);这里的pFeat类型是CComPtr<IFeature>
编译就出现了这么个大错误:error C2664: 'SketchProfile' : cannot convert parameter 1 from 'class ATL::CComPtr<struct IFeature>' to 'struct IFeature *& '
为什么呢,请高手指点
(2008年12月16日9:19:07)
补充:虽说上面的不可以,但是我如果仅仅让其在我的单个文件里建立函数,void SketchProfile(CComPtr<IFeature> &pFeat,CString&strPrt,CFile&prtFile);既不是接口函数,又不是成员函数,就可以,并且调用都是成功的,这个太奇怪了,哪位告诉能否解释下
- 在ATL中怎么不能用模板类作为参数?
- C#中模板参数能用类?
- 在模板类中使用字符串作为无类型模板参数
- 类模板作为函数参数
- gmail在firefox中经常不能用
- 输入法在word中不能用
- 模板中支持三元运算 不能用点
- Pycharm中html模板不能用jinja2标签
- 指针作为函数的参数,则不能用此申请内存
- 怎么就不能用啊
- 控件怎么作为参数
- java中split方法为何不能用小数点(.)做参数?
- 参数或变量不能用
- C#中怎么将XML作为参数post到接口
- c++ 以模板类作为参数的模板
- Assembly.GetEntryAssembly() 在asp.net 中不能用的原因
- ubuntu中vi在编辑状态下方向键不能用
- MySQL的临时表不能用在复合语句中
- 转载:ABAP:Function 之 Read_Text函数的使用方法
- Foundations of GTK+ Development (Expert's Voice in Open Source)
- DB2 UDB v8 Handbook for Windows and UNIX/Linux
- JavaScript用canvas元素实现 2D 和 3D (转)
- 字段解析
- 在ATL中怎么不能用模板类作为参数?
- 主板CMOS电池引起计算机无法启动的检修详解
- visifire笔记 - 图表控件
- SAP 未公布给我们 他们内部使用的 report
- 求素数的几种高效方法
- 关于smarty的学习
- 3DS MAX
- (28)CreateFont函数
- Linux硬盘分区简介