new关键字和delete关键字

new运算符可以在堆中开辟一个空间,用来存储变量,实际上,全局变量和静态变量都是默认存放在堆中的。因为堆通常存放占用空间大,生命周期长的数据。如果要让你自己定义的普通变量放到堆中,那么你可以使用new运算符,形式如下:

int *pvar=new int;

int *pvar=new int(10);

int *pavr=new int[5];

注意,数据不能在分配空间时初始化

分配了空间当然要释放空间,否则会造成常见的内存泄漏,就是说,那块空间就在那里,谁也用不了,白白的浪费着,等系统没有足够内存的时候,程序就崩溃了。

delete可以解决这个问题,如delete [] pvar;

当然也可以用 delete pvar,然而,对于类对象数字而言,这样是不行的,必须用delete [] pavr这种形式来释放所有分配的内存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

老码沉思录

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值