有关虚拟函数和抽象类的C ++面试问题
什么是虚函数?
虚函数是在基类中定义时没有定义的方法。此方法在父类中保留为黑色,并在子类中重新定义。
什么是抽象类?
抽象类是在其定义中具有抽象成员或至少一个纯虚函数的类。绝对不能实例化抽象类(创建对象)。它只能被继承,并且方法可以被覆盖。
可以有虚拟的析构函数吗?
是的,这些在C++中是合法的,但是这些析构函数是针对基类而不是子类的。
是否需要重写每个虚拟功能?
不,重新定义虚拟功能并不总是强制性的。可以按原样使用它。
我们可以有一个虚拟的构造函数吗?
构造函数不能是虚拟的,因为它们需要在类中定义。