注册 登录
编程论坛 C++教室

内存泄露

gao_guai 发布于 2012-06-15 11:29, 1023 次点击
不用new或者calloc().malloc()动态分配内存,有可能发生内存泄露么?应该是不能的,对不对?
10 回复
#2
lonmaor2012-06-15 11:37
动态分配的内存没有被及时的释放,我目前了解这么多
#3
hellovfp2012-06-15 11:52
你都不分配内存了,还担心什么内存泄露呢?
#4
zxwangyun2012-06-15 12:08
也是有可能的,看你调用过什么函数,有些api函数调用后,会自己动态分配内存,需要你手动释放
#5
zklhp2012-06-15 12:12
所谓的内存泄露一般就是指的在动态分配内存的时候没释放

当然也有其他情况会导致泄露 比如在windows编程里 一些句柄没有及时关闭或一些对象没有及时删除或频繁申请不释放某些东西也会导致泄露

具体我记得有些讲调试的书里有这个内容啊
#6
zklhp2012-06-15 12:15
这种问题很不好说啊

举个例子 买东西找零钱有可能收到假钱 我不买东西 就收不到假钱了?有可能银行取的钱是假钱呢 虽然概率小 但有可能

所以 不好说 具体问题具体分析
#7
gao_guai2012-06-15 15:55
谢谢各位了!!
#8
一只小蚂蚁2012-06-19 00:51
new出后的东西没释放都会产生内存泄露
#9
kangtachan2012-06-22 01:02
动态分配内存~是分配在堆中的,需要手动释放,,这句话人人都会说;

但是在实际项目中,不是说new完后就要delete掉,而是看new出来的指针对象,具体是干什么的;

可能真正释放是在本函数内,可能释放是在析构函数内~具体情况具体分析
#10
pangding2012-06-23 21:57
回复 8楼 一只小蚂蚁
你跟 大笑的蚂蚁 有什么关系?名字这么像。
#11
Toby22012-06-26 11:04
在mfc编程中,如GetDC()被调用后,如不手动调用ReleaseDC(),则会造成内存泄露
1