这个用释放吗

大头猫 2012-01-05 10:02:04
void *pBuf=NULL;
SafeArrayAccessData(varBLOB.parray,(void **)&pBuf);
n_tex=m_hge->Texture_Load((const char*)pBuf,lDataSize); //tex从内存中加载
SafeArrayUnaccessData(varBLOB.parray);

这里的指针需要手动释放吗?(void *pBuf=NULL;)
...全文
125 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lh520cq 2012-01-06
  • 打赏
  • 举报
回复
不用的
nature19862001 2012-01-06
  • 打赏
  • 举报
回复
不用。。。
mstlq 2012-01-06
  • 打赏
  • 举报
回复
http://msdn.microsoft.com/en-us/library/ms891243.aspx
调用SafeArrayUnaccessData之后就可以了
平凡的思想者 2012-01-06
  • 打赏
  • 举报
回复
关键是SafeArrayAccessData如何处理pBuf的?
如果只是改变指针的指向,就不用释放内存。
如果在SafeArrayAccessData中分配了内存,然后让pBuf指向这块内存,则需要释放内存的。
turing-complete 2012-01-05
  • 打赏
  • 举报
回复
应该不用,应为你没有分配动态内存。

不过你先得去人你这么用是否正确,只要正确就不用你管内存问题。从经验来看,SafeArrayAccessData应该是在内部分配内存的,不用你管分配和释放。

64,639

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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