内存泄漏!!
我的程序App的InitInstance()中如下代码:
CSingleDocTemplate* pDocTemplate;
pDocTemplate = new CSingleDocTemplate(
IDR_MAINFRAME,
RUNTIME_CLASS(CSafeStarDoc),
RUNTIME_CLASS(CMainFrame), // main SDI frame window
RUNTIME_CLASS(CSafeStarView));
pDocTemplate->SetContainerInfo(IDR_CNTR_INPLACE);
AddDocTemplate(pDocTemplate);
在debug的调试下,产生内存泄漏,提示如下:
D:\Project\safestar_Email\SafeStar.cpp(105) : {67} client block at 0x011E4A18, subtype 0, 108 bytes long.
a CSingleDocTemplate object at $011E4A18, 108 bytes long
我实在是没有办法,请各位提供一下解决办法,或者是UP
问题点数:100、回复次数:21Top
1 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 10:51:43 得分 0
UPTop
2 楼lysde(无所谓)回复于 2002-10-18 10:56:33 得分 10
delete掉就可以了Top
3 楼syh_17(神探柯南)回复于 2002-10-18 10:59:22 得分 10
upTop
4 楼everandforever(Forever)回复于 2002-10-18 10:59:55 得分 10
双击这一条语句, VC会带你到泄漏的地方.Top
5 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 11:02:37 得分 0
to:everandforever(Forever) 就是指向pDocTemplate = new CSingleDocTemplate这一句,倒霉:)Top
6 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 11:53:18 得分 0
uuuuuuupTop
7 楼alphapiao(奉旨灌水钦差)回复于 2002-10-18 12:06:53 得分 10
检查你自己定义的结构体,看哪个是108byte的,然后deleteTop
8 楼sunrivers(sunriver)回复于 2002-10-18 12:28:23 得分 10
pDocTemplate->SetContainerInfo(IDR_CNTR_INPLACE); 能不能deleteTop
9 楼sjsj(虚怀若谷)回复于 2002-10-18 12:30:46 得分 10
这些代码是VC自动生成的吧,你不要改动的
Top
10 楼ylb_and_xy(黑狐狸)回复于 2002-10-18 12:40:57 得分 10
找找给pDocTemplate指针分配的内存在那里释放的。从你给出的程序段看不到释放的地方。Top
11 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 13:02:50 得分 0
to: sjsj(悠行者) 对!我就奇怪程序照说VC自动生成不应该要我释放,我就是搞不明白,什么原因使不能释放呢?(我的程序还提到一个文档没有释放,会不会使这个原因?)Top
12 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 15:42:05 得分 0
UPTop
13 楼lllhaier(从C++菜鸟到JAVA菜鸟之旅)回复于 2002-10-18 16:10:48 得分 10
这个问题没有见过!Top
14 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-18 16:24:38 得分 0
谁见过?!Top
15 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-19 18:27:23 得分 0
UPTop
16 楼sjsj(虚怀若谷)回复于 2002-10-19 18:39:06 得分 10
UP一下,等高手回答。
不知道楼主是不是有过不经意的误操作,建议重新建立一个工程,将重新代码写入。
最好能多贴一些代码出来。Top
17 楼webber84(***闭关修炼中***)回复于 2002-10-19 18:59:27 得分 10
你是不是生成了两个dcotemplate,只对其中的一个调用了AddDocTemplate?Top
18 楼ju_feng(NorthSky)回复于 2002-10-19 19:00:58 得分 0
??Top
19 楼ddmpqcw(冰刀)回复于 2002-10-19 19:06:17 得分 0
upTop
20 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-10-19 19:48:10 得分 0
我是在别人的基础上修改,他的程序没有出向这个问题,而我修改后得出现了这个问题,怪!!!!!Top
21 楼Foxsky0(江湖无赖:走得太久,忘了为什么出发 ... ...)回复于 2002-11-04 14:21:55 得分 0
upTop




