Duplicar posibles:
What is the meaning of a const at end of a member function?¿Qué significa "const" (en contexto) al final de una definición de función?
Si mi definición de clase es la siguiente:
type CLASS::FUNCTION(int, const char*) const
¿Qué quiere decir la última const después del paréntesis de cierre, y cómo hacer yo aplicarlo a la función:
type CLASS::FUNCTION(int var1, const char* var2) {
}
Destinado a ser un engaño, pero más fácil de responder que buscarlo. Significa que se puede llamar a la función miembro en un objeto 'const' (o mediante una referencia-o-puntero-a-const), y que la función miembro no puede modificar los miembros de datos (a menos que estén marcados' mutable').En efecto, convierte 'this' en puntero-a-const en la función. Por lo general, dices "FUNCIÓN es una función miembro constante", aunque no recuerdo si esa terminología está en el estándar. –
@Steve: Eso ha sido respondido en un __ [entrada de preguntas frecuentes] (http://stackoverflow.com/questions/4059932/what-is-the-meaning-of-a-const-at-end-of-a-member -función)__. Lo encontré al escribir 'C++ - faq' en la barra de direcciones de mi navegador, lo que me llevó a [http://stackoverflow.com/questions/tagged/c++-faq](http://stackoverflow.com/questions/tagged/ c% 2b% 2b-faq), donde busqué 'const', que me dio la URL. Menos de 30 segundos. – sbi
@sbi: bueno, ciertamente no escribo 120 palabras por minuto, así que ganas. Si hubiera cronometrado el tiempo que tardó en escribir el comentario, sabríamos por cuánto tiempo. Sin embargo, su estrategia no habría funcionado si no hubiera sido una entrada de preguntas frecuentes, entonces, ¿cómo explicar ese riesgo? –