重载、覆盖、隐藏

重载:
    只有在  同一类定义中的同名成员函数才存在重载关系 ,主要特点是  函数的参数类型和数目有所不同 ,但  不能出现函数参数的个数和类型均相同 ,仅仅依靠返回值类型不同来区分的函数,这和普通函数的重载是完全一致的。另外,重载和成员函数是否是虚函数无关

覆盖:
    派生类中覆盖基类中的同名函数,要求两个函数的 参数个数、参数类型、返回类型都相同,且基类函数必须是虚函数。

隐藏:
  
派生类中的函数屏蔽了基类中的同名函数,
2个函数参数相同,但基类函数不是虚函数( 和覆盖的区别在于基类函数是否是虚函数)。2个函数参数不同,无论基类函数是否是虚函数,基类函数都会被屏蔽( 和重载的区别在于两个函数不在同一类中)。

猜你喜欢

转载自blog.csdn.net/pudao6842/article/details/79967141