在C++中,Override關(guān)鍵字用于顯式地指示一個成員函數(shù)是在派生類中重寫(覆蓋)其基類中的虛函數(shù)。
當(dāng)在派生類中重寫一個虛函數(shù)時,需要確保函數(shù)簽名和基類中的虛函數(shù)完全匹配。如果不匹配,編譯器會給出錯誤提示。為了避免意外地隱藏基類中的虛函數(shù)而導(dǎo)致錯誤,可以使用Override關(guān)鍵字來明確指示函數(shù)是在派生類中重寫基類中的虛函數(shù)。
使用Override關(guān)鍵字的示例:
class Base {
public:
virtual void print() {
std::cout << "Base class print function" << std::endl;
}
};
class Derived : public Base {
public:
void print() override {
std::cout << "Derived class print function" << std::endl;
}
};
在上面的示例中,Derived類重寫了Base類中的虛函數(shù)print,并使用了Override關(guān)鍵字來明確指示這是對基類中虛函數(shù)的重寫。
注意:Override關(guān)鍵字只能用于虛函數(shù)的重寫,對于非虛函數(shù)是不能使用Override關(guān)鍵字的。