我在com中有一个接口的方法:
typedef struct REC
{
long age;
};
STDMETHODIMP CRecManage::GetStudent(REC **pRec)在客户端用
REC *pRec=NULL;
reccom->GetStudent(&pRec);来取值,那么我的com端,应该怎样分配内容,那么又在哪释放呢?
帮忙啊!分数不够可再加
typedef struct REC
{
long age;
};
STDMETHODIMP CRecManage::GetStudent(REC **pRec)在客户端用
REC *pRec=NULL;
reccom->GetStudent(&pRec);来取值,那么我的com端,应该怎样分配内容,那么又在哪释放呢?
帮忙啊!分数不够可再加
解决方案 »
- View视图中,当去掉或加上WS_SYSMENU风格后,如何立即刷新窗口标题栏使三个按钮隐藏或显示
- 大虾们:请教程序为何执行无反应
- 如何实现类似FlashGet和迅雷一样得功能
- 求操纵扫描仪的代码
- 又是关于控件重绘
- 设备驱动程序怎么编译?
- 请问:如何将CString类型的“Thu Jul 22 10:23:12 2004”转换为time_t或者CTime类型?谢谢。
- 关于WideCharToMultiByte函数的问题?
- 我该看什么书?????
- 郁闷中。。。散分!
- 求软件工程师从书 VISUAL C++.NET 高级编程技术与范例 由电子工业出版社出版的配套书光盘源代码。送100分。
- 串口高手请进(非高手不要凑热闹)
如果返回的是New出来的REC,那么客户端需释放。
如果返回的是reccom的成员变量,在栈区,那么不需要客户端管理了。
我觉得你这样就足够了:
STDMETHODIMP CRecManage::GetStudent([out]REC *pRec)
......
REC rec;
reccom->GetStudent(&rec);
或
REC* pRec = new REC;
reccom->GetStudent(pRec);
delete pRec;
pRec == NULL;
最好是像ColderRain(一切尽在不言中) 说的,自己分配自己释放,肯定不会出问题。
但如果是new 出来一个数组,还是要在外面new比较好