如何把 VOID * 类型转换为COM中的类型

PatrickGamp 2004-06-22 02:48:49
我用ADO编程时,在 CPtrArray 中保存了一些连接 _ConnectionPtr,等我把它取出来用时 ConnectionPtr p = (ConnectionPtr)array.GetAt(i); 结果编译错误,应该怎么样转化?
...全文
153 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dxj1234 2004-06-26
  • 打赏
  • 举报
回复
定义 _ConnectionPtr 的宏太复杂,看的花眼了!
不过如果是指针,那么怎么用“.”符号又能象对象一样使用呢
PatrickGamp 2004-06-25
  • 打赏
  • 举报
回复
严格说来,ConnectionPtr应该是一个指针,它指向一个COM interface,我觉得dongfa(阿东) 说的CInterfaceArray不错,我还从来没用过
PatrickGamp 2004-06-23
  • 打赏
  • 举报
回复
那个 COM 的东西特别麻烦,不能直接指针转换,象wangweixing2000所说的array.GetAt(i)->QueryInterface(&p);当然不行,因为array.GetAt(i)返回的只是一个void*,怎么可能调用QueryInterface?
dxj1234 2004-06-23
  • 打赏
  • 举报
回复
_ConnectionPtr搞不清是对象还是指针!
dongfa 2004-06-23
  • 打赏
  • 举报
回复
CInterfaceArray
DerryZhang 2004-06-22
  • 打赏
  • 举报
回复
up
wangweixing2000 2004-06-22
  • 打赏
  • 举报
回复
array.GetAt(i)->QueryInterface(&p);
忠向 2004-06-22
  • 打赏
  • 举报
回复
整数I4应该可以吧

3,245

社区成员

发帖
与我相关
我的任务
社区描述
ATL,Active Template Library活动(动态)模板库,是一种微软程序库,支持利用C++语言编写ASP代码以及其它ActiveX程序。
社区管理员
  • ATL/ActiveX/COM社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧