C++中函数重载和覆盖的区别
在这篇文章中,我们将了解 C++ 中函数重载和函数覆盖之间的区别。
超载
重载期间不使用关键字。
原型仅基于参数的数量或类型而有所不同。
它发生在编译期间。
构造函数可以重载。
析构函数不能重载。
可用于实现早期绑定。
被调用函数的版本由所使用的参数的数量或类型决定。
这些函数将使用相同的名称、不同数量或类型的参数重新定义。
覆盖
原型始终保持不变。
它发生在运行时。
虚拟函数不能被覆盖。
析构函数可以被覆盖。
覆盖也称为后期绑定。
将被覆盖的函数前面是基类中的 'virtual' 关键字。
类对象的地址分配给指针调用其函数的指针。
定义函数时,它在主类中以 'virtual' 关键字开头。
在派生类中使用 'out' 关键字重新定义了相同的函数。
以上是 C++中函数重载和覆盖的区别 的全部内容, 来源链接: utcz.com/z/311395.html