关注
[1]new和malloc区别(详解):
1)异常处理:new分配内存失败抛出 bad_alloc 异常;malloc分配内存失败返回 NULL
2)内存块:new不需要指定内存块大小,编译器会根据类型自动确认;malloc 需要显式指定内存块大小
3)初始化:new 是 C++运算符,调用构造函数初始化;malloc 是C语言库函数,不会调用构造函数,需要手动初始化
4)内存分配为止:new 在自由存储区,malloc 在堆区,当然自由存储区本质也是堆区,但是前者是逻辑概念,后者是物理概念
5)内存释放:delete 调用析构函数,并将指针设置为 nullptr;free 不会调用析构,不会将指针设为 nullptr,可能产生野指针
6)数组释放:delete 可正确释放 new[] 分配的数组;free 不了解数组大小,不能释放 malloc 分配的数组
查看原帖
点赞 评论
相关推荐
牛客热帖
更多
正在热议
更多
# 秋招开始捡漏了吗 #
37869次浏览 270人参与
# 找工作八股要背到什么程度? #
5495次浏览 90人参与
# 京东开奖 #
435445次浏览 2464人参与
# 你实习是赚钱了还是亏钱了? #
7309次浏览 67人参与
# 今年秋招是回暖还是遇冷 #
4869次浏览 37人参与
# 用一句话形容你的团队氛围 #
4546次浏览 57人参与
# 你找工作是从容有余 or 匆忙滚爬? #
3985次浏览 44人参与
# 上班后,才发现大学__白学了 #
6665次浏览 41人参与
# 考研人,我有话说 #
149685次浏览 1198人参与
# 打工人的精神状态 #
104260次浏览 1321人参与
# 今年秋招还有金九银十吗 #
27294次浏览 249人参与
# 辞职后的日常 #
17168次浏览 84人参与
# 同bg的你秋招战况如何? #
161643次浏览 937人参与
# 一人一个landing小技巧 #
129427次浏览 1467人参与
# 机械人,你的第一份感谢信是谁给的 #
37537次浏览 346人参与
# 规定下班时间vs实际下班时间 #
57551次浏览 332人参与
# 学历对求职的影响 #
553300次浏览 3924人参与
# 为什么那么多公司毁约 #
203665次浏览 1443人参与
# Offer比较,求稳定还是求发展 #
65864次浏览 272人参与
# 我在牛爱网找对象 #
203378次浏览 1412人参与
# 腾讯云智研发工作体验 #
30718次浏览 158人参与
查看14道真题和解析