news 2026/7/7 19:30:33

new/delete与malloc/free的区别

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
new/delete与malloc/free的区别

背景:

malloc、free是c语言的库函数,是函数

new、delete是C++操作符,语言语法的一部分,编译器直接识别

// 操作符(语言内置) int a = 5 + 3; // + 是操作符 int b = a * 2; // * 是操作符 Base* obj = new Base; // new 是操作符 delete obj; // delete 是操作符 // 函数调用(需要函数名和括号) int c = add(5, 3); // add 是函数名 Base* obj2 = malloc(sizeof(Base)); // malloc 是函数名 free(obj2); // free 是函数名

1.new自动计算所需内存大小 ;malloc需要手动计算所需内存大小。

2.new返回对象类型的指针,delete获取对象类型的指针;malloc返回 无类型的指针void*

3.new是在free store上分配内存,malloc是在 堆 上分配内存

4.new在free store 上分配内存,malloc在堆上分配内存。

5.new会调用构造函数,new可以初始化;malloc只分配内存,不调用构造函数

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/7 8:54:25

终极性能优化!Performance-Fish让《环世界》帧率飙升300%

终极性能优化!Performance-Fish让《环世界》帧率飙升300% 【免费下载链接】Performance-Fish Performance Mod for RimWorld 项目地址: https://gitcode.com/gh_mirrors/pe/Performance-Fish 还在为《环世界》后期卡顿而苦恼吗?当你的殖民地发展到…

作者头像 李华
网站建设 2026/7/7 10:15:43

如何快速掌握LyricsX:桌面歌词显示插件完整指南

如何快速掌握LyricsX:桌面歌词显示插件完整指南 【免费下载链接】Lyrics Swift-based iTunes plug-in to display lyrics on the desktop. 项目地址: https://gitcode.com/gh_mirrors/lyr/Lyrics LyricsX是一款基于Swift开发的iTunes桌面歌词显示插件&#x…

作者头像 李华
网站建设 2026/7/6 22:43:00

TranslucentTB中文语言设置终极指南:快速解决界面显示问题

TranslucentTB中文语言设置终极指南:快速解决界面显示问题 【免费下载链接】TranslucentTB 项目地址: https://gitcode.com/gh_mirrors/tra/TranslucentTB TranslucentTB作为Windows系统上备受欢迎的任务栏透明化工具,其简洁高效的特性深受用户喜…

作者头像 李华
网站建设 2026/7/7 13:12:16

如何快速掌握RSSHub-Radar:智能订阅管理的完整实战指南

如何快速掌握RSSHub-Radar:智能订阅管理的完整实战指南 【免费下载链接】RSSHub-Radar 🍰 Browser extension that simplifies finding and subscribing RSS and RSSHub 项目地址: https://gitcode.com/gh_mirrors/rs/RSSHub-Radar 在信息爆炸的时…

作者头像 李华
网站建设 2026/7/6 22:56:51

wvp-GB28181-pro终极指南:3分钟完成Docker容器化部署

wvp-GB28181-pro终极指南:3分钟完成Docker容器化部署 【免费下载链接】wvp-GB28181-pro 项目地址: https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro wvp-GB28181-pro作为当前最热门的国标视频平台项目,通过Docker容器化部署可以大幅降低…

作者头像 李华
网站建设 2026/7/7 6:53:32

关于 AI 软件测试,你必须知道的 5 个惊人真相

你是否也曾深陷这样的场景:对着密密麻麻的需求文档,手动编写一条又一条看似永无止境的测试用例;或是每当开发团队更新一个按钮 ID,就不得不翻遍所有自动化脚本,进行痛苦的手动修改。这种繁琐、重复且极度耗时的工作&am…

作者头像 李华