Maison > développement back-end > C++ > Comment initialiser efficacement un `std::map` statique en C ?

Comment initialiser efficacement un `std::map` statique en C ?

Mary-Kate Olsen
Libérer: 2024-12-16 12:53:10
original
710 Les gens l'ont consulté

How to Effectively Initialize a Static `std::map` in C  ?

Initialisation de std::map en C

Lorsque l'on travaille avec des cartes statiques en C , on peut s'interroger sur la méthode appropriée d'initialisation. Cette question examine les options disponibles pour initialiser efficacement une carte statique.

Liste d'initialisation C 11

Une approche consiste à utiliser les listes d'initialisation C 11. Ces listes permettent de spécifier les valeurs initiales entre accolades, en préservant l'ordre d'insertion. La carte trie automatiquement les éléments en fonction de leurs clés.

#include <map>

using namespace std;

map<int, char> m = {{1, 'a'}, {3, 'b'}, {5, 'c'}, {7, 'd'}};
Copier après la connexion

Bibliothèque Boost.Assign

Vous pouvez également utiliser la bibliothèque Boost.Assign, qui fournit la map_list_of macro. Cette macro facilite l'initialisation des cartes avec des paires clé-valeur dans une syntaxe concise :

#include <map>
#include "boost/assign.hpp"

using namespace std;
using namespace boost::assign;

map<int, char> m = map_list_of(1, 'a')(3, 'b')(5, 'c')(7, 'd');
Copier après la connexion

En tirant parti de la liste d'initialisation ou de la bibliothèque Boost.Assign, vous pouvez facilement initialiser des cartes statiques en C , créant ainsi un environnement pratique et approche efficace.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal