《(拷贝构造函数和类的组合)》由会员分享,可在线阅读,更多相关《(拷贝构造函数和类的组合)(6页珍藏版)》请在金锄头文库上搜索。
1、第第 6 讲讲教学内容教学内容4.3 构造函数和析构函数4.3.2 拷贝构造函数 4.4 类的组合4.4.1 组合教学重点和难点教学重点和难点1 拷贝构造函数作用和使用方法2 类的组合的含义和使用方法教学方法:教学方法:通过程序代码演示,详细讲解概念,举一反三,让学生理解,拷贝构造函数的作用,调用时机,特点;另外,可以用单步调试的方法,演示,让学生观察程序的执行流程,跟踪观察类的构造函数,拷贝构造函数,析构函数,成员函数的执行顺序。通过列举现实生活中的例子,来讲解什么是类的组合,有什么样的功能,以及组合类的构造函数的特点教学学时教学学时2 学时教学过程:教学过程:一一 拷贝拷贝构造函数作用和使
2、用方法构造函数作用和使用方法1作用:作用:用一个已经存在的对象(由拷贝构造函数的参数指定),去初始化同类的一个新对象 2 形式:形式:是一种特殊的构造函数,其形参为本类的对象的引用。其形式为:类名 (类名 int minute;int second;public:Clock(int h = 0 ,int m = 0 ,int s = 0);void display();Clock(Clock /默认拷贝构造函数的形式;Clock:Clock(int h ,int m ,int s )hour = h;minute = m;second = s;cout class Partprivate:in
3、t val;public:Part(int n)val = n;cout val “ Part constructor called.“endl;Part()/默认构造函数val = 0;cout val “ Part default constructor called.“endl;Part()cout val “ Part destroy called.“endl;class Wholeprivate:int data;Part two,one;/类的组合,类的数据成员是另外一个类的对象,/此时 one 和 two 也叫对象成员/构造函数的调用顺序与此时的声明顺序有关,先调用 two 的构造函数/再调用 one 的构造函数public:Whole(int i,int j):one(i),data(j)/ 初始化列表cout data “ Whole constructor called.“endl;Whole()cout data “ Whole destroy called.“endl;void main(void)Whole w(10,20);/此时调用 w 的构造函数,在调用 w 的构造函数之前/ 会先调用 two 和 one 的构造函数课后练习课后练习:p120 页,例 4-7 人员信息管理课后作业课后作业