共用方式為


警告 C26433

函式應標示為 override

C++ Core Guidelines

C.128:虛擬函式應該只指定其中一個虛擬、覆寫或最終函式

編譯器不需要明確指出虛擬函式會覆寫其基底。 如果類別階層中的虛擬規格變更,未指定 override 可能會導致維護期間發生細微的問題。 它也會降低可讀性,並讓介面的多型行為變得不那麼明顯。 如果函式已明確標示為 override ,編譯器可以檢查介面的一致性,並協助在執行時間自行顯示問題之前找出問題。

備註

此規則不適用於解構函式。 解構函式有自己的虛擬細節。

規則不會將明確標示為 final 的函式加上旗標,而函式本身是特殊種類的虛擬規範。

警告會顯示在函式定義上,而不是宣告。 這可能會造成混淆,因為定義沒有虛擬規範,但警告仍然正確。

程式碼分析名稱: OVERRIDE_EXPLICITLY

範例:隱含覆寫

class Shape {
public:
    virtual void Draw() = 0;
    // ...
};

class Ellipse : public Shape {
public:
    void Draw() { // C26433
        //...
    }
};

另請參閱

C.128:虛擬函式應該只指定其中一個虛擬、覆寫或最終函式