C++中的虚函数(类的向上转换,和向下转换)

Posted lonelamb

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++中的虚函数(类的向上转换,和向下转换)相关的知识,希望对你有一定的参考价值。

1.C++中的封装是为了代码的模块化,继承是为了代码的重用,而多态则是为了接口的重用。
2.C++中的多态是用虚函数来实现的。
3.子类对象向父类指针的转换(向上转换)是安全的,隐式的,而父类对象向子类指针的转换(向下转换)是不安全的,用dynamic_cast<>转换会得到一个空指针。
4.普通的成员函数会根据指针的类型决定调用哪个函数,而虚函数则会每次都去查虚函数表,根据具体的类对象来决定调用哪个函数。

以上是关于C++中的虚函数(类的向上转换,和向下转换)的主要内容,如果未能解决你的问题,请参考以下文章

C++子类如何调父类的虚函数

c++中的虚函数

C++中,子类会继承父类的虚函数表!对于父类的析构函数(虚函数) 也会继承吗?

关于C++的虚函数在父类的内部调用

c++ 中如何调用基类的虚函数?

为啥“基类对象”不能调用它自己的虚函数? C++