Tengo un multimap<key_type,value_type>
y me gustaría saber si una clave en particular aparece en el mapa a lo sumo una vez.¿Cómo puedo determinar si una clave en particular es única en una multimapa?
sé que puedo llamar multimap.equal_range(key)
para encontrar un iterador al inicio y al final del rango que contiene key
pero me gustaría saber si hay sólo un elemento entre el range.first
y range.second
.
¿Hay una manera mejor que incrementar el valor de range.first
para ver si es igual a range.end
? Dado que multimap::iterator
es bidireccional, no es un gran problema deshacer el incremento, pero parece descuidado hacerlo.
Ah, no había visto la sobrecarga 'count'. Perfecto. Confirmaré que funciona mañana y marcaré como respondí. –
@LarryOsterman Debe '" clave "' estar entre comillas? Me gustó sin comillas ya que 'clave' podría ser una variable. @Nawaz Gracias por el mejor enlace al sitio de referencia –
No, no; esta fue mi mala, en mi caso la clave es una cadena y espaciada. Deshago. –