C++ 中的free()和delete

C++中delete和free()的区别如下:

  • delete 是一个动态释放内存的运算符,而 free() 是一个在运行时销毁内存的函数。
  • delete 运算符用于删除使用 new 运算符或 NULL 指针分配的指针,而 free() 函数用于删除使用 malloc()、calloc() 或 realloc() 分配的指针函数或void指针。
  • 当delete操作符销毁分配的内存时,则调用C++中类的析构函数,而free()函数不调用析构函数;它只从堆中释放内存。
  • delete运算符比 free() 函数快。

delete 删除数组示例

delete []pBuffer;

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值