内存漏洞是什么意思?

acdc 2001-08-17 09:14:21
...全文
126 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaobinliu 2001-08-17
  • 打赏
  • 举报
回复
乡下老太婆捡到了一个30000元的笔记本,然后没有珍惜,放在家里当切菜板。

丢东西的人不知道
ColdWolf 2001-08-17
  • 打赏
  • 举报
回复
还是oldnew说的精确,还有一种情况,就是指针失去了对内存的引用,像这样
char *temp1,*temp2;
temp1 = new char(1000);
temp2 = new char(2000);
temp1 = temp2;
这样,就这也找不到使用new分配给temp1的内存块,想delete都不行了啊。
cherami 2001-08-17
  • 打赏
  • 举报
回复
在使用new申请一个指向对象的指针后,系统为该指针分配一个地址存储该指针的地址值,并且生成一个该对象的实例,指针的地址值即指向此对象实例的地址,当在程序结束的时候你没有用 delete语句释放该指针时,系统只撤消了该指针的值(好象占2个字节),而没有调用该对象的析构函数释放该对象占用的内存(一般远大于2个字节)而使该内存不能再为系统所用。
oldnew 2001-08-17
  • 打赏
  • 举报
回复
c++中,当使用new申请一块内存,用过后delete掉,告诉系统这块内存可以在下次使用new的时候进行分配,当然如果这块比较小的话,系统会找一个更大的地方分配,这样这一块很小的内存便总是得不到利用,形成内存啐片(内存漏洞).
内存泄漏指的是new了之后没有delete 掉,即使对这块内存相关的引用已经结束,意思就是说指向此内存的指针(地址值)已经不可得了
ColdWolf 2001-08-17
  • 打赏
  • 举报
回复
象楼上说的,就是动态分配的内存没有释放,于是系统总是认为这块内存还在被使用。
scklotz 2001-08-17
  • 打赏
  • 举报
回复
通常就是指你用new申请了,但没有使用delete释放的内存。这样就产生了内存漏洞。
veryeasy 2001-08-17
  • 打赏
  • 举报
回复
例如妳用new定義一個變量,但最后沒有delete它
veryeasy 2001-08-17
  • 打赏
  • 举报
回复
例如妳有new定義一個變量,但最后delete它
striveadvance 2001-08-17
  • 打赏
  • 举报
回复
hehe
Great_Bug 2001-08-17
  • 打赏
  • 举报
回复
动态请求的内存,没有还给操作系统

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧