函数重定义:
1, 必须发生于父类与子类之间
并且父类与子类中的函数必须有完全相同的原型,(父类子类的函数参数类型,形参个数相同。)
,2.不使用virtual,
函数重载
1.必须在同一个类中进行(函数名相同,参数个数不一样)
2.子类无法重载父类的函数,父类同名函数将被名称覆盖,调用只是子类中寻找。
3.重载是在编译期间根据参数类型和个数决定函数调用(静态联编)
函数重写
1.必须发生于父类与子类之间
2.并且父类与子类中的函数必须有完全相同的原型,(父类子类的函数参数类型,形参个数相同。)
3.使用virtual声明之后能够产生多态(如果不使用virtual,那叫重定义)
4.多态是在运行期间根据具体对象的类型决定函数调用(动态联编)