这个用释放吗
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;)
[解决办法]
应该不用,应为你没有分配动态内存。
不过你先得去人你这么用是否正确,只要正确就不用你管内存问题。从经验来看,SafeArrayAccessData应该是在内部分配内存的,不用你管分配和释放。
[解决办法]
关键是SafeArrayAccessData如何处理pBuf的?
如果只是改变指针的指向,就不用释放内存。
如果在SafeArrayAccessData中分配了内存,然后让pBuf指向这块内存,则需要释放内存的。
[解决办法]
http://msdn.microsoft.com/en-us/library/ms891243.aspx
调用SafeArrayUnaccessData之后就可以了