您的位置:首页 > 编程语言 > C语言/C++

C++学习笔记——继承相关问题

2016-08-12 19:19 295 查看
一、

1、声明一个派生类对象,构造函数的执行顺序是:限制性基类的构造函数(体),在执行本类的构造函数(体)

2、回收一个派生类对象,析构函数的执行顺序:先执行本类的析构函数(对本类特有成员相关堆空间进行释放),再执行基类的析构函数。

二、

将子类对象当父类对象的情况:将子类对象赋值给父类对象,父类引用指向子类对象,父类指针指向子类对象

向下转型

将父类的指针或者引用转为子类的指针或者引用。目的是为了(通过父类指针或者引用)访问子类的成员。

向下转型的前提:父类指针或者引用“指向”的对象为子类的对象。(乡下转型是危险的)。

Circle c(1,2,3);
Point *p = &c;
p->dis();

Circle *c1 = (Circle*)p;
c1->dis();


通过“指向”子类对象的父类指针或者引用访问子类的成员:向下转型(强转,危险)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: