多态与重载的区别

2018-06-22  本文已影响0人  a11en0

重载可认为是静态的多态,静态联编,发生在编译阶段

多态是动态的,动态联编,发生在运行阶段

静态的比动态的效率高,但动态的最大优点是多态性,提高代码复用性。

实现多态公有继承有两种机制

  1. 在派生类中重新定义基类方法。重新定义的方法和基类中的方法完全一致。即,函数名一致,函数的返回值类型一致,参数列表一致,只是行为不同,这就是多态公有继承;

多态必要条件:

2 .虚方法;

函数重载的关键是什么

关 键 在 于 函数的参数列表——特征标, 参数列表指的是参数的数量参数的类型以及参数的顺序
函数的返回值类型可以相同也可以不同,但是若想实现函数的重载,参数列表必须不同。前提是函数名相同。

注意:类型引用和类型本身为同一特征标,如:void show(int i) 和 void show(int &i)不是函数的重载,是一个函数。

上一篇 下一篇

猜你喜欢

热点阅读