在C++中,如果派生類定義了與其基礎類別中定義的函式相同,則稱函式重寫。 它用於實現執行時多型性。 它使您能夠提供已由其基礎類別提供的函式有所區別的特定實現。
C++函式重寫/覆蓋範例
下面來看看一個簡單的C++中函式重寫/覆蓋的例子。 在這個例子中,我們重寫/覆蓋了eat()
函式。
#include <iostream>
using namespace std;
class Animal {
public:
void eat(){
cout<<"Eating...";
}
};
class Dog: public Animal
{
public:
void eat()
{
cout<<"Eating bread...";
}
};
int main(void) {
Dog d = Dog();
d.eat();
return 0;
}
執行上面程式碼,得到以下結果 -
Eating bread...