函数的重载、重写与隐藏

重载

  1. 相同的范围(在同一个类中)
  2. 相同的函数名字,不同的参数列表,与返回值类型没有关系
  3. virutal关键字可有可无

重写

  1. 不同的范围(分别位于派生类与基类)
  2. 相同的函数名字,相同的参数
  3. 基类函数必须要有virtual关键字

隐藏

隐藏指在某些情况下,派生类中的函数屏蔽了基类中的同名函数,包括以下几种情况

  1. 两个函数参数相同,但是基类不是虚函数。和覆盖的区别在于基类函数是否是虚函数
  2. 两个函数参数列表不同,无论基类函数是否虚函数,基类函数都将被覆盖。和重载的区别在于两个函数不在同一个类中
原文地址:https://www.cnblogs.com/hunter-w/p/13260683.html