原文:基类与派生类,父类指针指向子类对象

先看一段代码: 运行结果如下,情理之中,意料之内: C 创建对象的时候先创建基类部分,然后创建派生部分。析构的时候要反过来了,先释放子类部分,然后在释放父类部分。但是这里只释放了父类部分,没有释放派生类的部分。为什么呢 原因很明确:因为之类pB是基类指针,虽然指向的是派生类,只能调用自己的函数,我们是无法通过基类指针调用到子类的成员函数的 除非采用virtual,也就是迟绑定技术 。 虚函数 为了 ...

2018-03-08 23:05 1 3611 推荐指数:

查看详情

基类指针指向派生类对象

派生类对象也“是”基类对象,但两者不同。 派生类对象可以当做基类对象,这是因为派生类包含基类的所有成员。 但是基类对象无法被当做成派生类对象,因为派生类可能具有只有派生类才有的成员。 所以,将派生类指针指向基类对象的时候要进行显示的强制转换,否则会使基类对象中的派生类成员成为未定义 ...

Tue Mar 18 19:19:00 CST 2014 0 6266
基类指针指向派生类对象&派生类指针指向基类对象

静态绑定 如果以一个基础指针指向一个衍生对象(派生类对象),那么经由该指针只能访问基础定义的函数 如果以一个衍生指针指向一个基础对象,必须先做强制转型动作(explicit cast),这种做法很危险,也不符合生活习惯,在程序设计上也会给程序员带来困扰。 如果基础和衍生 ...

Tue Jul 07 03:13:00 CST 2020 0 1494
派生类基类 指针指向

https://juejin.im/post/6844904054930292749 派生类基类的关系并不是两个独立的类型,在派生关系中, 派生类型“是一个”基类类型(Derived class is a base class)。在C++语法里规定:基类指针可以指向一个派生类对象 ...

Tue Sep 29 07:20:00 CST 2020 0 745
基类指针派生类指针

1 基类指针指向基类对象(正常使用) 2 派生类指针指向派生类对象(正常使用,不管是不是虚函数,调用的都是派生类的函数) 3 基类指针指向派生类对象(多态的体现,虚函数的话调用的是派生类的,非虚函数的话调用的是基类的) 指针不能使用只存在于派生类而不存在于基类中的元素,也就是指向的是派生类中 ...

Tue Mar 27 02:11:00 CST 2018 0 1333
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM