Aracılığıyla paylaş


final Tanımlayıcısı

Türetilmiş bir sınıfta geçersiz kılınamayan sanal işlevleri atamak için son anahtar sözcüğünü kullanabilirsiniz. Ayrıca devralınamaz sınıflar aramak için de onu kullanabilirsiniz.

Sözdizimi

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

Açıklamalar

final , bağlama duyarlıdır ve yalnızca işlev bildirimi veya sınıf adından sonra kullanıldığında özel bir anlamı vardır; aksi takdirde ayrılmış anahtar sözcük değildir.

Sınıf bildirimlerinde final kullanıldığında, base-classes bildirimin isteğe bağlı bir parçasıdır.

Örnek

Aşağıdaki örnek, bir sanal işlevin geçersiz kılınamayacağını belirtmek için son anahtar sözcüğünü kullanır.

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

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

Üye işlevlerin geçersiz kılınabileceğini belirtme hakkında bilgi için bkz . Tanımlayıcıyı geçersiz kılma.

Sonraki örnek, bir sınıfın devralınamayacağını belirtmek için son anahtar sözcüğünü kullanır.

class BaseClass final
{
};

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

Ayrıca bkz.

Anahtar Sözcükler
override Tanımlayıcısı