1 / 54
文档名称:

第5章 堆与复制构造函数.ppt

格式:ppt   页数:54
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

第5章 堆与复制构造函数.ppt

上传人:中国课件站 2011/10/11 文件大小:0 KB

下载得到文件列表

第5章 堆与复制构造函数.ppt

文档介绍

文档介绍:《C++面向对象程序设计》教学内容
第1章 C++概述
第2章类和对象
第3章面向对象程序设计概述
第4章进一步学习类和对象
第5章堆与复制构造函数
第6章继承性:派生类
第7章运算符重载
第8章虚函数和多态性
第9章模板
第10章类库和C++的标准模板库STL
第11章输入输出流
第12章异常处理
第5章堆与复制构造函数

需要new和delete的原因
默认的复制构造函数
自定义复制构造函数
堆 Heap
堆是按动态方式分配的内存区域。
在程序中需要空间存放数据时,就申请动态内存单元,使用完毕后释放动态内存单元。
这种动态内存分配方式能够显著地提高内存的利用率。
C++程序的内存布局
Stack 栈
Heap 堆
Global data 全局数据区
程序代码区program code
代码区存放程序的代码(可执行指令);
全局数据区存放全局变量、静态变量、常量。
固定存储区域
栈是存放程序中的所有动态局部变量、函数参数、函数返回值等信息的一块内存区域。
在固定存储区域与堆栈之间的自由区域称为堆
栈 Stack
栈的内存管理严格遵循后进先出(LIFO: Last in, First Out)的顺序,
即释放栈中对象所占内存时的顺序刚好与给这些对象分配栈中内存时的顺序相反,这一点正是实现函数调用所需要的。
从栈中分配内存效率特别高,对栈的充分利用是C/C++编译程序能产生优质高效代码的原因之一。
动态内存分配
堆的内存是以动态分配方式管理的。
所谓动态分配的内存是在程序运行期间获得的。
动态存储分配方式允许我们的程序可以在执行期间根据实际的需要存放的数据量来申请合适数量的内存单元。
这种动态分配方式不但能够提高内存的利用率,而且对于链表和二叉树等动态数据结构特别有用。
动态内存申请和释放
用函数malloc( ) 分配的动态内存必须用函数free( )释放;
用new申请的动态内存必须用delete 释放。
因为在C++程序中,从堆中获取的内存单元不会被自动释放,因此必须使用函数free( )或者用delete释放这种内存。
如果从堆中获取的内存在使用完后没有被释放,这部分内存在程序结束之前会一直被占用,这种情况被称为“内存泄漏”。
需要new和delete的原因
需要new和delete的原因
在堆上创建对象
需要new和delete的原因
对自定义的类类型,使用函数malloc( )给对象分配动态空间时不能自动调用构造函数;
使用函数free( )释放对象所占用的动态空间时也不能调用析构函数。
C++语言创建了new和delete两个运算符来满足面向对象的新特性,
在C++语言程序中,我们应该使用new和delete来创建和销毁类的对象。
在堆上创建对象
使用new运算符在堆上创建对象时能够自动调用构造函数进行初始化;
使用 delete运算符释放对象占用的动态内存时能够自动调用该对象的析构函数进行善后处理。

最近更新

2024年山东胜利职业学院单招职业倾向性测试题.. 40页

2024年山东轻工职业学院单招职业技能考试模拟.. 41页

2024年山西华澳商贸职业学院单招职业适应性测.. 40页

2024年山西机电职业技术学院单招职业倾向性测.. 41页

2024年山西省临汾市单招职业适应性测试题库完.. 41页

2024年山西经贸职业学院单招职业技能测试模拟.. 40页

2024年山西药科职业学院单招职业适应性测试题.. 39页

2024年山西金融职业学院单招综合素质考试模拟.. 39页

2024年崇左幼儿师范高等专科学校单招职业倾向.. 40页

2024年巴中职业技术学院单招职业适应性测试模.. 41页

2024年广东松山职业技术学院单招职业适应性测.. 41页

2024年广东生态工程职业学院单招综合素质考试.. 41页

2024年广东省深圳市单招职业倾向性考试模拟测.. 40页

2024年广东金融学院单招职业适应性测试模拟测.. 41页

2024年广州卫生职业技术学院单招综合素质考试.. 41页

2024年广州民航职业技术学院单招职业倾向性考.. 42页

2024年广西交通职业技术学院单招职业技能考试.. 41页

2024年广西农业职业技术大学单招职业适应性考.. 40页

2024年广西培贤国际职业学院单招职业倾向性测.. 41页

2024年广西工程职业学院单招职业倾向性考试题.. 41页

2024年广西省柳州市单招职业倾向性测试模拟测.. 39页

2024年广西省贺州市单招职业倾向性考试题库带.. 39页

2024年广西质量工程职业技术学院单招综合素质.. 41页

2024年廊坊卫生职业学院单招职业倾向性测试题.. 40页

2024年延边职业技术学院单招职业技能测试题库.. 42页

2024年张家口职业技术学院单招职业适应性考试.. 39页

2024年德宏职业学院单招职业倾向性测试模拟测.. 40页

2024年惠州城市职业学院单招职业适应性考试题.. 41页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页