在C++中,可以使用override
關鍵字來顯式地指示函數重寫基類的虛函數。override
關鍵字的使用方法如下:
class Base {
public:
virtual void foo() const {
cout << "Base::foo()" << endl;
}
};
class Derived : public Base {
public:
void foo() const override {
cout << "Derived::foo()" << endl;
}
};
int main() {
Derived d;
d.foo(); // 調用Derived類中的foo()函數
return 0;
}
在上述示例代碼中,Derived
類繼承自Base
類,并重寫了Base
類的虛函數foo()
。使用override
關鍵字來修飾Derived
類中的foo()
函數,可以讓編譯器驗證該函數是否真正重寫了基類的虛函數。
在main()
函數中,我們創建了一個Derived
類的對象d
并調用了它的foo()
函數。由于foo()
函數被標記為override
,因此編譯器會自動調用Derived
類中的foo()
函數,輸出結果為"Derived::foo()"。