L'initialisation d'une std::map lorsque la taille est connue à l'avance

Je voudrais initialiser un std::map. Pour l'instant, je suis en utilisant ::insert mais j'ai l'impression de gaspiller quelques temps de calcul puisque je connais déjà la taille que je veux allouer. Est-il possible d'allouer une taille fixe de la carte et de les remplir à la carte ?

  • Pourquoi ne pas utiliser l'itérateur ou liste d'initialiseur version de l'insert? Connaissez-vous le nombre d'éléments à l'avance, mais pas leurs valeurs?
  • Oui, je sais le nombre, mais pas les paires clés-valeurs.
  • Est map::insert vraiment le goulot d'étranglement dans votre programme?
  • pas possible sans en connaître les clés
  • Une grande question de montrer la vraie nature de std::map. C'est certainement plus qu'une "sorte de vecteur plus de la magie".
InformationsquelleAutor vanna | 2012-10-24