Me pregunto si hay alguna manera de hacer que se cruzan o las diferencias entre dos estructuras definidas como std::set<MyData*>
y std::map<MyData*, MyValue>
con algoritmos estándar (como std::set_intersect
)¿Hay alguna manera de intersectar/diff un std :: map y un std :: set?
El problema es que necesito para calcular la diferencia entre el aparato y la conjunto de claves del mapa, pero me gustaría evitar la reasignación (ya que es algo que se realiza muchas veces por segundo con estructuras de datos de gran tamaño). ¿Hay alguna manera de obtener una "vista clave" del std::map
? Después de todo, lo que estoy buscando es considerar solo las teclas al hacer la operación de configuración, así que desde un punto de implementación debería ser posible, pero no he podido encontrar nada.
Consulte filter_iterator en la biblioteca del iterador de impulso. –
Lo sentimos, no filter_iterator - transform_iterator. Ver la respuesta de Anonymous. –