2012-05-22 21 views

Respuesta

41

El calificador const se aplica al tipo a la izquierda inmediata a menos que no haya nada a la izquierda, entonces se aplica al tipo a la derecha inmediata. Entonces sí, es lo mismo.

9

ejemplo Contrived:

std::vector<char*> test; 
const auto a = test[0]; 
*a = 'c'; 
a = 0; // does not compile 
auto const b = test[1]; 
*b = 'c'; 
b = 0; // does not compile 

Tanto a y b tienen tipo char* const. No crea que simplemente puede "insertar" el tipo en lugar de la palabra clave auto (aquí: const char* a). La palabra clave const se aplicará a todo el tipo que coincida con auto (aquí: char*).