函数重写(覆盖)和函数重定义(同名隐藏)都是针对不同作用域来说的。
-
函数重写(覆盖)
函数重写就是覆盖,指的是虚函数的实现,虚函数实现时各个函数的名称、参数、返回值全部相同。 -
函数重定义(同名隐藏)
函数重定义(同名隐藏)要求函数同名,有以下两种情况:
参数不同,不论有无virtual关键字都是发生同名隐藏
参数相同,当基类无virtual关键字时才发生同名隐藏 -
函数重载
函数重载是针对同一作用域来说的。
要求函数名字相同,参数列表不同(参数类型,个数,顺序)。
函数重载与函数的返回类型无关。
本文详细解析了函数重写(覆盖)与重定义(同名隐藏)的概念,强调了它们在不同作用域中的应用。函数重写涉及虚函数,确保多态性;而重定义则关注同名函数在不同参数列表下的隐藏现象。同时,函数重载作为在同一作用域内的功能,通过参数列表的差异实现。理解这些概念对于提升编程技能至关重要。
425

被折叠的 条评论
为什么被折叠?



