- 重写可以有两种,直接重写成员函数和重写虚函数,只有重写了虚函数才能算是C++多态性
- 重写方法的参数列表,返回值,所抛出的异常与被重写方法一致;
- 被重写的方法不能为private
- 静态方法不能被重写为非静态的方法
- 重载则是允许有多个同名的函数,而这些函数的参数列表不同(参数个数、参数类型)(发生在同一个类中)
- 不能通过访问权限,返回类型、所抛出的异常进行重载;
- 隐藏是指派生类的函数屏蔽了与其同名的基类函数。通常有两种情况:
- 如果派生类的函数与基类的函数同名,但是参数不同,此时无论有无virtual,基类的函数将被隐藏
- 如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual关键字,此时基类的函数被隐藏。(如果有virtual关键字则是重写)
C++:重写、重载、隐藏
最新推荐文章于 2024-11-02 14:41:43 发布