CComQIPtr 的问题 CComQIPtr<IHTMLAnchorElement,&IID_IHTMLAnchorElement> pAnchor;pAnchor.release() 和 pAnchor->release()有什么区别呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 前者应该是整个指针释放,后者应该是将指针的内容释放(指针的指针)。在使用智能指针的时候,不要自己释放,否则后果很严重,严重到说不清。如果非要释放,应该这么写pAnchor=0;你还可以这样写IHTMLAnchorElementPtr pAnchor;好像很少有书说,但是实际都这么写,省事多了。 CComQIPtr<IHTMLAnchorElement,&IID_IHTMLAnchorElement> pAnchor;pAnchor.release()// 释放内部的接口指针,同时内部指针赋值为 NULLpAnchor->release() // 错!!!一定不要这么使用。 // 因为这个调用并不把内部指针清空,那么析构的时候会被再次释放(释放了两次) pAnchor.Release(); // 释放内部的接口指针,同时内部指针赋值为 NULLpAnchor->Release(); // 错!!!一定不要这么使用。 // 因为这个调用并不把内部指针清空,那么析构的时候会被再次释放(释放了两次)参看http://www.vckbase.com/document/viewdoc/?id=1500 LoadLibrary加载失败 WinPcap文档带的例子中,有一个不太明白,请教高手 简单的问题,偶的MSDN丢了。。郁闷。。。求救 以前有看过的,但是忘了:VC如何完成自动输入 ===** VS2010创建新工程编译出错 **===请各位看官帮忙解答 单片机的OS的内存管理机制与PC的不同之处? 如何在程式中改變控件的Style 请问各位高手,VC有前途吗? 如何清空ini文件的健值? 高手指点:不知被哪个臭网站在我的IE标题栏加了个广告按扭,怎样去掉它? 关于浏览器控件显示的问题 window 程序中,应用程序什么时候响应 WM_NCPAINT 消息?
pAnchor=0;
你还可以这样写IHTMLAnchorElementPtr pAnchor;好像很少有书说,但是实际都这么写,省事多了。
pAnchor.release()// 释放内部的接口指针,同时内部指针赋值为 NULLpAnchor->release() // 错!!!一定不要这么使用。
// 因为这个调用并不把内部指针清空,那么析构的时候会被再次释放(释放了两次)
pAnchor->Release(); // 错!!!一定不要这么使用。
// 因为这个调用并不把内部指针清空,那么析构的时候会被再次释放(释放了两次)参看http://www.vckbase.com/document/viewdoc/?id=1500