基类中定义的虚函数,子类中必须要覆盖吗?为什么?

2024-11-25 13:34:39
推荐回答(3个)
回答1:

如果基类定义的纯虚函数,那么子类继承下来的也是纯虚函数,如果不给予实现,那么便不能创建子类的实例,如果基类定义的是非纯虚函数,那么子类继承下来的也是非纯虚函数。都可以不予实现,因为自动继承下来了,看你子类的需要。

回答2:

要看虚函数本身有没有实现。
存没有实现的纯虚函数,那这个基类是不能实例化的。继承这个基类的子类可以覆盖也可以不覆盖其虚函数。如果基类中的纯虚函数在子类中没有覆盖,那这个子类还是一个虚类,不能实例化的。

回答3:

虚函数的目的就是在需要的时候实现,从而实现多态,如果必须覆盖,还要虚函数有什么意义