Estoy tratando de averiguar la mejor manera de determinar si estoy en la última iteración de un bucle sobre un mapa con el fin de hacer algo como lo siguiente:¿Cómo puedo detectar la última iteración en un ciclo sobre std :: map?
for (iter = someMap.begin(); iter != someMap.end(); ++iter) {
bool last_iteration;
// do something for all iterations
if (!last_iteration) {
// do something for all but the last iteration
}
}
Parece que hay varias maneras de hacer esto: iteradores de acceso aleatorio, la función distance
, etc. ¿Cuál es el método canónico?
Editar: ¡no hay iteradores de acceso aleatorio para los mapas!
+1: ¡Buena pregunta! –