c++用指针删除堆中空间实例源码,由于使用new创建的内存空间不会被系统自动释放,因此假如你不去释放它,那么该区域的内存就始终不能为其他数据所使用,而指向该内存的指针是一个局部变量,当定义该指针的函数结束并返回时,指针也就消失了,那么我们就再也找不到该块内存区域了,就像重拔键中记录的号码一样,假如重拨键中的号码自动消失了,那么我们就再也无法访问安徽出版社了。同样的道理,假如指向该内存区域的指针消失不见了,计算机就再也找不到该区域的内存了,就像是丢失了这块内存一样,我们把这种情况就叫做内存泄露。这种糟糕的情况一直会持续到程序结束该区域的内存才能恢复使用,因此假如你不需要一块内存空间,那么就必须对指向它的指针使用关键字delete。
#include <iostream>
using namespace std;
int main()
{
int *p=new int;//创建c++指针p并指向int内存
*p=326;//为该内存空间赋值为326
cout<<*p<<endl;//输出c++指针指向的内存的数据
delete p;//删除指针指向的内存
cout<<*p<<endl;//输出删除后的指针
*p=8;//再次通过c++指针进行赋值
cout<<*p<<endl;
return 0;
}
本文链接地址: c++用指针删除堆中空间实例源码