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

Comment puis-je initialiser un `std::map` statique en C ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-29 17:39:10754parcourir

How Can I Initialize a Static `std::map` in C  ?

Initialisation de Static std::map en C

Lors de l'initialisation d'un std::map en C , il existe plusieurs approches à considérer.

Liste d'initialisation C 11

En utilisant la liste d'initialisation C 11, vous pouvez initialiser une carte statique directement :

#include <map>

using namespace std;

static map<int, int> m = {{1, 2}, {3, 4}, {5, 6}};

Boost.Assign

Vous pouvez également exploiter la bibliothèque Boost.Assign pour initialiser une carte de manière concise :

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

using namespace std;
using namespace boost::assign;

static map<int, int> m = map_list_of(1, 2)(3, 4)(5, 6);

Remarque :

Quelle que soit l'approche choisie, les cartes statiques sont initialisés lors du démarrage du programme et restent initialisés tout au long de l'exécution du programme.

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!

Déclaration:
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