2 回答

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超6個(gè)贊
描述:override保留字表示當(dāng)前函數(shù)重寫了基類的虛函數(shù)。
目的:1.在函數(shù)比較多的情況下可以提示讀者某個(gè)函數(shù)重寫了基類虛函數(shù)(表示這個(gè)虛函數(shù)是從基類繼承,不是派生類自己定義的);2.強(qiáng)制編譯器檢查某個(gè)函數(shù)是否重寫基類虛函數(shù),如果沒有則報(bào)錯(cuò)。
用法:在類的成員函數(shù)參數(shù)列表后面添加該關(guān)鍵字既可。
例子:
class Base {
virtual void f();
};
class Derived : public Base {
void f() override; // 表示派生類重寫基類虛函數(shù)f
void F() override;//錯(cuò)誤:函數(shù)F沒有重寫基類任何虛函數(shù)
};
注意:override只是C++保留字,不是關(guān)鍵字,這意味著只有在正確的使用位置,oerride才啟“關(guān)鍵字”的作用,其他地方可以作為標(biāo)志符(如:int override;是合法的)。
相關(guān):override還有一個(gè)姊妹保留字final。
VC++編譯器支持情況: VS2008,VS2010,VS2012,VS2013,+
注: override為標(biāo)準(zhǔn)C++保留字,并非VS特有,目前主流的編譯器的新版本都支持該保留字。
- 2 回答
- 0 關(guān)注
- 817 瀏覽
添加回答
舉報(bào)