derived 类 是否需要他们自己的在 base 上声明的虚函数版本?
Do derived classes need their own version of a virtual function declared on base?
例如,class Plant
有一个 virtual void info()
方法。 class flower
派生自 Plant
.
Plant
是否必须有自己的方法实现?
没有
Base classes 不需要 自己实现由 dervided class 实现的虚方法。但是,他们可以实现。
要跳过基础 class 中的实现,只需将其设为纯虚拟即可,例如
virtual void info() = 0;
在那种情况下,任何派生的 classes - 或者更具体地说:任何你想拥有其实例的派生 class - 都需要实现虚拟方法。
如果函数是pure virtual,即声明为virtual void info() = 0;
,则否。否则是。
例如,class Plant
有一个 virtual void info()
方法。 class flower
派生自 Plant
.
Plant
是否必须有自己的方法实现?
没有
Base classes 不需要 自己实现由 dervided class 实现的虚方法。但是,他们可以实现。
要跳过基础 class 中的实现,只需将其设为纯虚拟即可,例如
virtual void info() = 0;
在那种情况下,任何派生的 classes - 或者更具体地说:任何你想拥有其实例的派生 class - 都需要实现虚拟方法。
如果函数是pure virtual,即声明为virtual void info() = 0;
,则否。否则是。