• # Héritage de std::map

    Posté par . En réponse au lien Effortless Performance Improvements in C++: std::unordered_map. Évalué à 5.

    J'ai toujours été surpris par la propriété d'ordonnancement de std::map. Mais c'est une vieille structure. Depuis, la norme d'implémentation est devenue les hash maps, que ce soit en Java ou en Perl ou les dict en Python (bien que ces derniers conservent l'ordre, après une n-ième implémentation).

    J'ai presque envie de conseiller std::unordered_map comme std::map et de renommer std::map en std::ordrered_map ;) Quand à l'opérateur [] qui crée forcément un entrée, en appelant le constructeur par défaut, c'est un principe même du langage... qui est un sacré piège, surtout quand les valeurs de la map sont des objets complexes.