首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

跨模块释放内存,该如何处理

2012-05-13 
跨模块释放内存C/C++ code进程里的线程是享用一个堆???那么全局变量呢???静态变量呢?? 是不是也是进程里的

跨模块释放内存

C/C++ code
进程里的线程是享用一个堆???那么全局变量呢???静态变量呢?? 是不是也是进程里的线程可以共享之????所以访问的时候需要lock.第二个问题:为什么在dll里分配内存不哟啊用new, 跨模块释放内存会引发很多的问题??可是new的底层也是GlobalAlloc啊,调用的还是api,干嘛会出错。。如果不用new,是不明智的,c++推荐用new。


[解决办法]

是 是


不用new就有问题? 楼主理解错了,是DLL里分配的,应该由DLL delete,除此之外别无禁忌。
[解决办法]
++
探讨


是 是


不用new就有问题? 楼主理解错了,是DLL里分配的,应该由DLL delete,除此之外别无禁忌。

[解决办法]
知不知道这个释放谁完成的,自身释放其实是用的delete
void CWinThread::Delete()
{
// delete thread if it is auto-deleting
if (m_bAutoDelete)
delete this;
}
而不同模块的delete可能不兼容

热点排行