VC和JS交互返回字符串,麻烦帮忙看看小弟我的代码有没有内存泄露的有关问题
VC和JS交互返回字符串,麻烦帮忙看看我的代码有没有内存泄露的问题
代码如上,CHtmlView的扩展类,返回字符串给JS,因第一次弄基于COM的东西,不清楚以上写法有没有内存泄漏的问题?
另外,这种返回字符串给JS的写法还有没有更简单的做法,能否不用_variant_t 直接返回BSTR呢,
如果能的话那消息映射那怎么用什么返回类型,函数返回类型用啥?
以上共两个问题,望都能指点一二,不胜感激
------解决方案--------------------
我也想学,顶一下吧
------解决方案--------------------
Detach做了拷贝,所以应该不会泄露
DISP_FUNCTION(CWebControl, "ResDataTest", ResDataTest, VT_VARIANT ,VTS_NONE ) //消息映射
VARIANT CWebControl::ResDataTest( )
{
_bstr_t bstr = szBuf; //ansi字符串BUF,定义略
_variant_t vt;
vt.vt=VT_BSTR;
vt.pbstrVal = (BSTR *)bstr.Detach();
return vt.Detach();
}
代码如上,CHtmlView的扩展类,返回字符串给JS,因第一次弄基于COM的东西,不清楚以上写法有没有内存泄漏的问题?
另外,这种返回字符串给JS的写法还有没有更简单的做法,能否不用_variant_t 直接返回BSTR呢,
如果能的话那消息映射那怎么用什么返回类型,函数返回类型用啥?
以上共两个问题,望都能指点一二,不胜感激
VC
内存泄露
CHTMLVIEW
_bstr_t
_variant_t
------解决方案--------------------
我也想学,顶一下吧
------解决方案--------------------
Detach做了拷贝,所以应该不会泄露