¿Se itera un iterador a través de boost::unordered_set
o boost::unordered_map
en el mismo orden, siempre que el conjunto o el mapa no se hayan modificado?¿Un iterador itera a través de boost :: unordered_set o boost :: unordered_map en el mismo orden, siempre y cuando el conjunto no se haya modificado?
9
A
Respuesta
5
Algunas implementaciones de un hash map reordenarán los elementos que hash al mismo bin, colocando el último elemento al que se accede al principio de una lista, como una optimización. Esto cambiaría el orden. No sé si boost::unordered_map
hace esto, pero en el futuro podría terminar sustituyendo std::unordered_map
y todo dependerá de la implementación de su compilador.
1
Debe ser determinista, pero siempre y cuando se denominen desordenada, no debe confiar en esto para iterar sobre sus elementos.
Cuestiones relacionadas
- 1. boost :: serialization of boost :: unordered_map
- 2. ¿Un mapa STL siempre da el mismo orden cuando se itera desde begin() hasta end()?
- 3. Adaptación de envases no iterables que se itera a través de encargo a plantillas iterador
- 4. Lucene .net Boost no funciona cuando se usa * comodín
- 5. Problemas con Boost :: Python y Boost :: Threads
- 6. boost :: hilos orden de ejecución
- 7. Pregunta de Java ConcurentMap keySet() cuando se modifica el mapa y se itera sobre el conjunto de claves
- 8. Iterar a través XmlNodeList, el valor es siempre el mismo
- 9. por qué el conjunto boost mpl permite tipos no exclusivos
- 10. colgar y/o segfault al usar boost :: threads desde matlab, no cuando se llama directamente
- 11. Obtener índice numérico de Boost multiíndice iterador
- 12. boost pool_alloc
- 13. ¿El conjunto en Ruby siempre conserva el orden de inserción?
- 14. elementos de almacenamiento en un unordered_set vs almacenándolos en un unordered_map
- 15. Cómo instalar boost a través de Homebrew?
- 16. GCC 4.4/4.5 unique_ptr no funciona para unordered_set/unordered_map
- 17. El uso de Boost BIMAP en C++ Boost
- 18. ¿El boost :: interprocess threadsafe?
- 19. Programación de orden superior con Boost :: Python
- 20. Itera y devuelve un conjunto de n elementos consecutivos
- 21. boost :: program_options se cuelga en el brazo "a veces"
- 22. orden de clasificación de boost :: weak_ptr after expiring?
- 23. boost :: tokenizer vs boost :: split
- 24. C++ boost unordered_map: determine si la clave existe en el contenedor
- 25. ¿Está garantizado que el iterador .each en ruby siempre da el mismo orden en los mismos elementos cada vez?
- 26. ¿El iterador personalizado no funciona con BOOST_FOREACH?
- 27. Boost y Autoconf
- 28. Re: acceso de referencia con boost :: make_transform_iterator
- 29. Boost Multiarray Dimensiones
- 30. ¿Cómo las pruebas siempre se ejecutan en el mismo orden en Scalatest?