作者ColaNut ()
看板EE_DSnP
标题[问题] HW4 - delete
时间Wed Nov 20 10:15:36 2013
如果用macro定的delete:
void operator delete(void *p){_memMgr->free((T*)p);}
会呼叫
void free(T *p){
getMemRecycleList(0)->pushFront(p);
}
--
所以我在memMgr.h里不管怎麽叫delete
根本没办法清掉记忆体?
这其中一定是有什麽误会 >"<
--
你站在桥上看风景,看风景的人在楼上看你。
明月装饰了你的窗子,你装饰了别人的梦。 -- 卞之琳 <断章>
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 111.248.234.151
※ 编辑: ColaNut 来自: 111.248.234.151 (11/20 10:19)
※ 编辑: ColaNut 来自: 111.248.234.151 (11/20 10:22)
1F:推 ahpc82:不不 那个#define不是写给memMgr.h看的 11/20 12:30
2F:→ ahpc82:visit src/mem/memTest.h, line 9 11/20 12:31
3F:→ ahpc82:打错, line 27, USE_MEM_MGR_(MemTestObj); 11/20 12:33
4F:推 ric2k1:是啊! delete 会把记忆体回收起来,不会清掉记忆体还给系统 11/20 13:51
5F:→ ric2k1:要清掉记忆体是用 MTReset 11/20 13:52
6F:→ ColaNut:不知道我这样讲有没有错:只要跟memTestObj扯上边的new 11/20 15:32
7F:→ ColaNut:就会使用到overload过的new,而memBlock的new就是正常的。 11/20 15:33
8F:→ nianze:我觉得应该可以这样讲 因为在memBlock我们没有overload new 11/20 15:54
9F:→ ColaNut:好喔!感谢老师、老朱及N大~ 11/20 16:00