1.new、delete、malloc、free关系
delete会调用对象的析构函数,和new对应free只会释放内存,new调用构造函数。malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于malloc/free。因此C++语言需要一个能完成动态内存分配和初始化工作的运算符new,以及一个能完成清理与释放内存工作的运算符delete。注意new/delete不是库函数。
2.delete与 delete []区别
delete只会调用一次析构函数,而delete[]会调用每一个成员的析构函数。在More Effective C++中有更为详细的解释:“当delete操作符用于数组时,它为每个数组元素调用析构函数,然后调用operatordelete来释放内存。”delete与New配套,delete []与new []配套
MemTest*mTest1=newMemTest[10];
MemTest*mTest2=newMemTest;
您可能关注的文档
- 2016陕西省西安市西工大第十次大练习语文试卷—A4版讲义.doc
- 2016食品安全隐患排查工作5篇讲义.doc
- 2016泰安高三语文一模试题讲义.doc
- 2016学习十八届五中全会精神心得体会9篇讲义.doc
- 2016应急救援设备设施清单讲义.doc
- 2016政教处工作计划讲义.doc
- 2016中考物理实验专题训练讲义.doc
- 2016最新无偿献血活动策划书讲义.doc
- 2017届高考全真模拟预测考试(第6次考试)---全国卷语文试题讲义.doc
- 2017届浙江省新高考历史大事年表必修加选修讲义.doc
- 2026年智慧健康管理系统创新报告.docx
- 河北衡水市武强中学2025-2026学年高二下学期4月期中物理试题(含解析).docx
- 2026年人工智能行业智能老年防走失定位器创新报告.docx
- 2026年低空经济飞行器量子技术应用创新报告.docx
- 2026年农业智能农业智能育种创新报告.docx
- 河北省保定市莲池区保定市第一中学2025-2026学年高二下学期期中考试生物试题(含解析).docx
- 2026年智慧城市电子站牌充电创新报告.docx
- 河北省邯郸市平恩中学等校2025-2026学年八年级期中考试英语试题(含解析).docx
- 2026年供应链创新技术应用报告.docx
- 2026年体育智能赛事管理系统支付系统创新报告.docx
最近下载
- 台达电子:Delta 800 VDC数据中心电源与冷却解决方案.docx VIP
- 第8章李学干_计算机系统结构.ppt VIP
- 中国国防科学技术报告研制报告样本.doc VIP
- 第7章-计算机系统结构(第五版)李学干.ppt VIP
- 2026春统编版语文 11《山地回忆》ppt课件(共25张ppt).pptx VIP
- 统编版小学六年级语文下册第二单元学业质量测评卷.docx VIP
- 社会责任报告.docx VIP
- 开利39GP、39CQP空气处理机组.pdf VIP
- Power Up3课后单元测试 - U9 - Unit Test.docx VIP
- 辽宁省七校协作体2023-2024学年高二下学期6月联考政治试题.pdf VIP
原创力文档

文档评论(0)