1 / 3
文档名称:

4.2 构造函数和析构函数.doc

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

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

分享

预览

4.2 构造函数和析构函数.doc

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

下载得到文件列表

4.2 构造函数和析构函数.doc

文档介绍

文档介绍:构造函数和析构函数
在OOP中,凡是实用程序创建的对象都需要作某种形式的初始化。为此,在C++的类说明中,引进了构造函数(constructor function),供创建类的实例时调用,并自动完成对象的初始化。析构函数(destructor function)则用于释放对象定义时通过构造函数向系统所申请的存储空间以及有关的系统资源。它是在对象离开其有效范围时自动调用。
[] 。EX4-
构造函数的特性
构造函数具有以下特性:
(1)、构造函数的名称与它所属的类名相同,且是无返回值类型(任何返回类型,包括void,都是非法的)。
(2)、一个类可以有一个以上的构造函数,重载构造函数参数个数或类型不一样。如果编程时在类中没有显式定义构造函数,慢编译器会为类自动生成一个缺省的构造函数(不带任何参数)。
(3)、构造函数是在以类去定义所属实例时,由编译器自动调用的。在C++中,执行某对象的说明时,调用了构造函数,创建了该对象。它不同于一般的变量说明语句。
(4)、构造函数与一般成员函数性质相同,同样要受到访问限制。一个定义于非public区的构造函数,则说明该类为私有类。
[] 私有类实例。
(5)、控制成员变量内存分配,为定义对象向系统申请内存。
(6)、构造函数不能用常规的调用方法,不可取它们的地址,不能被继承。
构造函数的设计和使用
首先讨论构造函数设计面临的问题是什么?解决问题的思路和原则是什么?
(1)、类中私有成员一般不作初始值设置,需要在定义对象时正确初始化,以确保对象的有效性。
(2)、采取显式调用成员函数进行对象初始化容易遗漏,造成对象无意义。因此使用构造函数进行对象初始化为最佳选择。
(3)一个类的不同对象需要有不同的初始化,因此采取两种方式解决此问题:参数化的构造函数和多构造函数。
下面分别进行具体的介绍。
1、带参数的构造函数
[] 具有带参数的构造函数的类的说明及使用。
一般情况下,构造函数往往使用缺省值,因为构造函数定义了缺省值,在函数调用时,若无特别指定参数,便可以缺省值作初始化。而且也可以防止遗漏初始赋值。
缺省参数的构造函数用法与一般函数用法相同。
[]
注意:编译器一般是严格按函数定义时的顺序来确定实参的位置。如果参数调用时的实参个数不足,编译器将优先匹配前面的形参,而不管它们是否有缺省值(参见函数一节)。
此外,当构造函数只有一个函数时,可采用以下形式来定义对象:
class_name obj_name=value;
2、多构造函数
对于一个类的不同对象,当其需要不同类型和不同个数的初始化参数时,可以在一个类中具有几个构造函数,以适应不同的情况。
[] 。
注意避免错误:所定义的多个构造函数之前,在参数个数或类型上必须有差异;在定义实例对象,调用多构造函数时,若使用缺省参数,特别要防止二义性。
2、复制构造函数(copy constructor)
复制构造函数是一种特殊的构造函数:
(1)、具有一般构造函数的功能

最近更新

2026年以温暖为话题的初中日记作文 8页

绿色供应链管理在家电行业实践 35页

蝮蛇毒血清免疫疗效分析 37页

2026年以亲爱的老师为题目的作文 5页

2026年代理货品运输报关合同书范文精选 16页

2026年仓库管理制度大全及流程 59页

肩袖损伤微创修复技术 36页

轨道交通发展影响因素分析 35页

2024年安徽马钢技师学院单招综合素质考试题库.. 40页

2024年安阳职业技术学院单招综合素质考试题库.. 40页

2024年宜昌科技职业学院单招职业倾向性考试题.. 41页

2024年宝鸡中北职业学院单招职业技能测试模拟.. 40页

2024年山东劳动职业技术学院单招职业技能考试.. 40页

2024年山东外国语职业技术大学单招职业适应性.. 41页

2024年山东电子职业技术学院单招职业倾向性考.. 40页

2024年山东省滨州地区单招职业适应性考试题库.. 41页

2024年山东科技职业学院单招职业技能考试题库.. 39页

2024年山西机电职业技术学院单招职业适应性考.. 41页

2024年山西省吕梁市单招职业适应性测试题库及.. 40页

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

2024年山西药科职业学院单招职业技能考试题库.. 40页

2024年山西通用航空职业技术学院单招职业技能.. 40页

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

2024年巴中职业技术学院单招综合素质考试模拟.. 40页

2024年常州工业职业技术学院单招职业适应性考.. 39页

【人教版英语字帖】七年级下册单词表衡水体字.. 42页

国开《建筑力学》期末机考答案 15页

农村人才流失国外研究报告 2页

住院患者自带药品使用管理规定通知 3页

栏杆计算书 2页