Skip to content

Latest commit

 

History

History
11 lines (6 loc) · 969 Bytes

27、如何理解多态.md

File metadata and controls

11 lines (6 loc) · 969 Bytes

27、如何理解多态

​ 定义:同一操作作用于不同的对象,产生不同的执行结果。C++多态意味着当调用虚成员函数时,会根据调用类型对象的实际类型执行不同的操作。

​ 实现:通过虚函数实现,用virtual声明的成员函数就是虚函数,允许子类重写。声明基类的指针或者引用指向不同的子类对象,调用相应的虚函数,可以根据指针或引用指向的子类的不同从而执行不同的操作。

​ Overload(重载):函数名相同,参数类型或顺序不同的函数构成重载。

​ Override(重写):派生类覆盖基类用virtual声明的成员函数。

​ Overwrite(隐藏):派生类的函数屏蔽了与其同名的基类函数。派生类的函数与基类函数同名,但是参数不同,隐藏基类函数。如果参数相同,但是基类没有virtual关键字,基类函数将被隐藏。