当前位置: 首页 > news >正文

内容7 内存管理 1​​

上图中new A(1)不是创建一个匿名对象,而是按照类创建了一个对象

以上程序会因为申请内存过大而失败,假设不管,就会抱错。这里如下图显示有异常,必须捕获,不然终止报错

尝试捕获,exception是库中异常的类型,这里先写就行

当运行到某处申请失败时就会直接跳转到catch,再继续走

再次运行如下,显示申请内存失败

newdelete是用户进行动态内存申请和释放的操作符
operator newoperator delete是系统提供的全局函数
new在底层调用operator new全局函数来申请空间,
delete在底层通过operator delete全局函数来释放空间

new创建一个对象时,返回一个指向该对象的地址。

使用delete时,直接从new开辟空间后返回的指针处开始析构一个对象,然后free一个对象。

当用new创建多个自定义类型时,会额外开辟4字节用来存放对象个数(为了后面使用delete[]时,让编译器知道要析构几个对象),返回一个指向首个对象的地址(不是开辟空间的开端,而是中端)。

用delete[]释放时,会将返回的指针自动向前移动4字节进行释放,读取到要析构几个对象,然后再进行free释放。

注意free时只能 从开辟的完整空间 的开头处开始释放空间,否则报错

类内没有析构函数,编译器会进行优化行为(认为它没有申请资源,不会调用析构函数,所以new创建多个对象时也就不需要额外开辟4字节用来存放对象个数),此时返回的是开辟的完整空间的开头处,使用delete,不会调用析构函数,直接free new开辟的整个完整空间,没报错,程序正常运行。

http://www.jsqmd.com/news/1189053/

相关文章:

  • 苏州手表回收攻略|全城正规门店渠道,估价实操技巧,避坑兜底一站式变现 - 生活时报
  • STM32F215RE与ADS131M02高精度数据采集方案详解
  • 2026年7月最新深圳万国官方售后服务热线与网点地址查询 - 万国中国官方服务中心
  • 2026 广告媒介采购行业发展观察:标准化直采平台规范企业营销投放链路
  • 虚竹哥与北京大学出版社免费送AI书活动第七期:《具身智能机器人开发全解》
  • 基于ADC12DJ5200SE的宽带射频采样接收机设计实战指南
  • LangChain 多任务应用实战案例
  • Windows C盘清理教程:安全释放数十GB空间的系统优化指南
  • YJD-06A/B 星型卸料器 300*300 方口国标法兰——河北九阳除尘自产耐磨防卡卸料器技术解析与企业能力白皮书 - 品牌优选官
  • YOLOv11架构改进:MFM与LEGM模块详解
  • PD分离+弹性伸缩/角色切换的实践笔记
  • Lua字节码逆向工程实战:用unluac恢复丢失源码的完整指南
  • ADP5350与STM32F042C6的嵌入式电源管理方案
  • 从零构建带AI流式对话的Vue2全栈应用
  • 2026国产液位计产业深度解析:磁翻板液位计/ 雷达液位计/超声波液位计/差压流量计头部厂家技术实力与工况选型全指南
  • 2026广州高端翡翠回收实力排行,禹竞名奢汇专收冰种收藏翡翠 - 禹竞奢收行
  • 2026无锡首饰回收科普|本地正规门店排名避坑指南 - 奢品小当家
  • 8-SOFA_约束、重力与材料模型补充
  • 虚拟主播面部捕捉技术:从证件照识别到实时渲染优化
  • 2026年北京手表回收:劳力士回收店面选择指南、价格透明、避坑技巧深度解析 - 奢侈品回收测评
  • 2026成都锦江Celine赛琳回收,腋下包、托特包专业无损鉴定 - 逸程奢侈品回收中心
  • 技术文档交付周期缩短68%的秘密:ChatGPT+Markdown+Swagger+Confluence四维协同工作流,附可复用的12个Prompt模板
  • 运维转大模型:别卷Prompt,先搞定“权限墙”与“可观测性”
  • C++内存管理实战:从RAII原理到智能指针应用与避坑指南
  • 薪资计算器只计算收入多少,编写程序,换算每份工作时消耗的内心热情值,优先推荐热情损耗最低的岗位,而非单纯高薪岗位。
  • 电力系统配网重构与二阶锥优化实战指南
  • 模板驱动型文档自动化:让结构化文档生成像印刷机一样精准
  • YOLO26的ProgLoss渐进式损失平衡源码解读:训练稳定性是如何被保障的?
  • C++高性能线程安全队列实现:从双锁设计到无锁优化
  • 外企年会“夹心层”测评:纯会务、本土创意、综合策划,谁能同时搞定总部审计和员工体验?