Operador const de C++ (Resumen) 2007-01-27

Variables constantes

  • const int entero; Entero constante, una vez inicializada la variable entero no podrá ser cambiado su valor.
  • const int * pentero; ó int const * pentero; Puntero a entero constante, el contenido del puntero pentero no se podrá cambiar.
  • int * const pentero; Puntero constante a entero, no se podrá cambiar el puntero.

Como regla general const afecta al elemento que está inmediatamente a su izquierda, si no hay nada al que está inmediatamente a su derecha.

Valores constantes de retorno de función

const char * Funcion()
{ return "Un texto"; }

Funcion()[1] = 'a'; // Error

La variable devuelta no se puede modificar pues es constante.

Parámetros constantes

void mostrarPila(const Pila &p);

Como mostrarPila no debe modificar la pila pasamos el objeto pila a mostrar por referencia y constante. De esta manera no podremos modificar el objeto p, ni acceder a métodos de este que no se hayan declarado como const.

Métodos constantes

class Tipo {
...
  void imprime() const;
...
}

Evita que el método imprime pueda modificar los miembros del objeto.

blog comments powered by Disqus