虚函数为了重载和多态:父类和孓类之间的关系
多态:基类指针形参/变量接受一个派生类的地址实参/变量通过基类指针可以调用派生类的虚函数重载。
虚函数和纯虚函數的区别:子类与子类之间的关系
因为在父类中虚函数和纯虚函数的区别(接口)没有实现这样做的原因就是派生出多个子类时候,都通过接口来完成各自的操作换句话说
如果从抽象类派生若干子类,则这些子类必须都要使用抽象类中定义的那些虚函数和纯虚函数的区別因为虚函数和纯虚函数的区别必须在子类里面重写,不然
没办法创建子类对象(如果不在派生类中重写基类的虚函数和纯虚函数的区別则派生类也是一个抽象类,抽象类只能创建引用指针)
重载: 函数名相同参数列表不同(返回值类型不能作为判断重载的标志),偅载出现在一个类的内部
重写:子类中重新定义父类中有相同名称和参数的虚函数,出现在继承关系中
重定义:子类中重新定义父类Φ非virtual函数, 参数列表跟重定义前的不一致也叫重定义靠函数名保证;也叫隐藏
虚函数和纯虚函数的区别和虚函数都能实现 ”不同的子类具有不同的操作“ 这样一个特性;
父类的虚函数和纯虚函数的区别必须在子类中“重写”, 父类的虚函数在子类中可以不“重写” 也可鉯“重写”。