37 绝不重新定义继承而来的缺省参数值

37 绝不重新定义继承而来的缺省参数值

  1. virtual 函数系动态绑定(又名后期绑定),缺省参数值却为静态绑定(又名前期绑定)
  2. 静态类型:所声明的类型;动态类型:所指对象的类型,可在程序执行过程中改变,通常由赋值完成
  3. 调用virtual 函数时,究竟调用哪一份函数实现代码,取决于调用时那个对象的动态类型;


若想为派生类提供与基类相同的参数值,可使用使用NVI手法,让非虚函数提供缺省参数,如此可避免代码重复和相依性。在这里插入图片描述
在这里插入图片描述