Oharra
Orrialde honetara sartzeak baimena behar du. Saioa hasteko edo direktorioak aldatzen saia zaitezke.
Orrialde honetara sartzeak baimena behar du. Direktorioak aldatzen saia zaitezke.
Puede usa la palabra clave final para designar funciones virtuales que no se pueden invalidar en una clase derivada. También puede utilizarla para designar clases que no se pueden heredar.
Sintaxis
function-declaration final;
class class-name final base-classes
Comentarios
final es contextual y tiene un significado especial solo cuando se usa después de una declaración de función o un nombre de clase; de lo contrario, no es una palabra clave reservada.
Cuando final se usa en declaraciones de clase, base-classes es una parte opcional de la declaración.
Ejemplo
En el ejemplo siguiente se usa la palabra clave final para especificar que una función virtual no se puede invalidar.
class BaseClass
{
virtual void func() final;
};
class DerivedClass: public BaseClass
{
virtual void func(); // compiler error: attempting to
// override a final function
};
Para obtener información sobre cómo especificar que las funciones miembro se puedan invalidar, vea override (especificador).
En el ejemplo siguiente se usa la palabra clave final para especificar que una clase no se puede heredar.
class BaseClass final
{
};
class DerivedClass: public BaseClass // compiler error: BaseClass is
// marked as non-inheritable
{
};