- 重载:同一个函数的不同表现形式。
- 同一个类中;
- 函数原型不同(函数名相同,参数列表即顺序、个数、类型不同);
- virtual关键字可有可无。
- 重写:继承关系中,派生类对基类同名函数有不同的表现形式。
- 有继承关系的类;
- 函数原型相同;
- 基类成员函数必须声明为虚函数(virtual)。
- 隐藏:继承关系中派生类遮蔽基类的成员函数 (名字隐藏了基类的方法)
- 有继承关系的类;
- 两种:
- 区别重载:函数原型不同,基类成员可以有virtual,派生类隐藏了基类的函数;
- 区别重写:函数原型相同,基类没有virtual,派生类隐藏了基类。