C++中父类的虚函数必需要实现吗?
一、情景
C++中父类的虚函数必需要实现吗?
class Vir{
public:
virtual void tryVirtual();
};
class CVir:public Vir{
public:
void tryVirtual(){
std::cout<<“CVir”<<std::endl;
}
};
二、说明
(1)在main函数中,假设有父类或者子类的实例对象,就须要有父类的虚函数的实现。
不管是虚函数还是普通的函数,如果没有实例化该类的情况下,只声明不定义编译器是不会报错的,但是实例化的情况下,必须定义!
(2)在main函数中,假设没有父类或者子类的实例对象,能够不实现父类的虚函数。
(3)假设把虚函数写成纯虚函数,也就不须要实现了。也没不会发生上述讨论。
纯虚函数
纯虚函数不可以实例化,但是可以指针