Edd*_*die 1 c++ oop qt
class C1 { void A(); void B(); } void C1::A(){ return B(); } class C2 : public C1 { void B(); } C2 *obj = new C2; obj->A(); // returns B() from C1
为什么来自C1的B()被称为?如何使A()仅存在于C1中并从C2调用B()?
Sha*_*baz 10
你需要B()在C1一个virtual功能.
B()
C1
virtual
虚函数基本上是函数指针,它们在初始化对象时获取它们的值.如果你new C1,函数指针将指向,C1::B如果你的new C2函数指针指向C2::B.
new C1
C1::B
new C2
C2::B
注意:要阅读virtual有关主题和相关主题的更多信息,请搜索功能覆盖和多态.
归档时间:
14 年,1 月 前
查看次数:
15714 次
最近记录: