Un método calificado con la palabra reservada const tiene prohibido modificar variables de la clase a menos que estas hayan sido
declaradas con la palabra reservada mutable. Un método const puede ser invocado tanto por objetos const como por objetos que no
son const.
classFooClass
{intmetodoConstFoo(int _a)const; //El calificador 'const' va al final de la firma del método
};
intFooClass::metodoConstFoo(int _a)const{
//Código del método
}
De acuerdo con lo anterior se puede afirmar que un método debería ser calificado con la palabra const siempre y cuando dicho método
no vaya a modificar ninguna de las variables de la clase y que además se pretenda que este método vaya ser accedido por instancias const de la clase
(y no-const también.)
A ver que aprendimos...
¿Cuál es el problema en el siguiente fragmento de código?