欢迎光临散文网 会员登陆 & 注册

C++ new和delete的用法

2023-08-21 11:13 作者:BYYYSJX  | 我要投稿

C++里的new和delete简而言之就是:

new和delete都是动态分配内存的方法,new在堆上(如果不了解堆的话就不用管,只要记得是在内存上)开辟一块内存,然后整理一下就可以使用了。用完了一定要记住要delete,因为程序不会帮你自动delete不用的内存的。

举个例子,你开了一家餐馆,现在来了一批客人,你需要铺一张桌子来招待他们,你可以new一个,客人吃完了走了,如果你不收拾这个桌子,其他客人就不能用了,这时候你需要派你的服务员去把桌子清理(delete)一下。可能你听说过有些语言带有垃圾回收,那么垃圾回收是什么呢?大概就是一群比较勤奋的服务员,不用你指派,他们自己看见脏了的桌子就去收拾了。你只管new,不用delete。

动态分配内存优点挺多:函数可以返回new出来的对象指针、可以new一个很大很大的对象、可以控制对象的生命周期等等。

缺点就是如果你忘了delete,可能等内存用完了,你的“餐馆”(程序)就倒闭了。

总的来说,合理地使用new和delete可以提高程序的性能,避免内存泄漏和悬垂指针等问题。但应注意避免过度的动态内存分配和释放,避免影响程序的性能。


WRITE-BUG研发团队衷心希望【WRITE-BUG数字空间】可以给每位同学一个属于自己的秘密空间,同时祝愿大家在“公开圈子”世界里,遇见志同道合的伙伴们,因为我们与大家一样,都曾孤独前行着。


C++ new和delete的用法的评论 (共 条)

分享到微博请遵守国家法律