今天写程序遇到一个奇怪的内存问题, 显示不可read:
"0x0039c365" 指令引用的 "0x010fa3e8" 内存。该内存不能为 "read"。
检查代码发现有个Com指针忘了释放,虽然智能指针会自动释放,不过在它自动释放前调用了CoUninitialize()的话,释放的时候就会产生错误。
所以在调用CoUninitialize()前,一般要把NULL赋植给智能指针进行析构。
参考:
今天写程序遇到一个奇怪的内存问题, 显示不可read:
"0x0039c365" 指令引用的 "0x010fa3e8" 内存。该内存不能为 "read"。
检查代码发现有个Com指针忘了释放,虽然智能指针会自动释放,不过在它自动释放前调用了CoUninitialize()的话,释放的时候就会产生错误。
所以在调用CoUninitialize()前,一般要把NULL赋植给智能指针进行析构。
参考: