ATL 传递自定义结构的问题

loutingyv 2006-02-08 10:49:13
我的代码如下:
idl中:
typedef struct tag
{
double x;
double y;
double z;
} Tag;
[id(20), helpstring("method GetTag")] HRESULT GetTag([out]Tag *pTag);


CPP:
pTag->x=0;pTag->y=0;pTag->z=0;


调用端:
Tag m_tag;
psvr->GetTag(m_tag);

怎么都不对,问题在哪里?
...全文
124 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
loveghb 2006-02-14
  • 打赏
  • 举报
回复
如上
loutingyv 2006-02-08
  • 打赏
  • 举报
回复
忘了说:是运行时出错,不是编译不对
loutingyv 2006-02-08
  • 打赏
  • 举报
回复
是我写错了,调用端:psvr->GetTag(&m_tag);
modena 2006-02-08
  • 打赏
  • 举报
回复
psvr->GetTag(&m_tag);
xiaoqiqixiao 2006-02-08
  • 打赏
  • 举报
回复
刚学C的人都知道
Tag* 和Tag的不同
XXandOO 2006-02-08
  • 打赏
  • 举报
回复
不好意思,不是CoTaskMemRealloc,是CoTaskMemAlloc
XXandOO 2006-02-08
  • 打赏
  • 举报
回复
out类型参数是组件方分配内存,组件方分配内存要使用CoTaskMemRealloc,客户端用完后要用CoTaskMemFree释放。

3,245

社区成员

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

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