共用方式為


final 規範

您可以使用 final 關鍵字來指定無法在衍生類別中覆寫的虛擬函式。 您也可以用它來指定無法被繼承的類別。

語法

function-declaration final;
class class-name final base-classes

備註

final 會區分內容,且只有在函式宣告或類別名稱之後才有特殊意義;否則,它不是保留關鍵字。

在類別宣告中使用 final base-classes 是宣告的選擇性部分。

範例

下列範例會 使用 final 關鍵字來指定無法覆寫虛擬函式。

class BaseClass
{
    virtual void func() final;
};

class DerivedClass: public BaseClass
{
    virtual void func(); // compiler error: attempting to
                         // override a final function
};

如需如何指定可覆寫成員函式的資訊,請參閱 覆寫規範

下一個範例會 使用 final 關鍵字來指定無法繼承類別。

class BaseClass final
{
};

class DerivedClass: public BaseClass // compiler error: BaseClass is
                                     // marked as non-inheritable
{
};

另請參閱

關鍵字
override 規範