Je lis un super tutoriel génial en C ++ 11 et l'auteur fournit cet exemple en expliquant le mot-clé final
:
struct B {
virtual void f() const final; // do not override
virtual void g();
};
struct D : B {
void f() const; // error: D::f attempts to override final B::f
void g(); // OK
};
Est-il donc logique d'utiliser ici le mot-clé final
? À mon avis, vous pouvez simplement éviter d'utiliser le mot clé virtual
ici et éviter que f()
ne soit remplacé.