Heim >Backend-Entwicklung >C++ >Wie kann ich eine statische „std::map' in C initialisieren?

Wie kann ich eine statische „std::map' in C initialisieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-29 17:39:10714Durchsuche

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

Initialisierung von Static std::map in C

Bei der Initialisierung eines statischen std::map In C sind mehrere Ansätze zu berücksichtigen.

C 11-Initialisierungsliste

Mithilfe der C 11-Initialisierungsliste können Sie eine statische Karte initialisieren direkt:

#include <map>

using namespace std;

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

Boost.Assign

Alternativ können Sie die Boost.Assign-Bibliothek nutzen, um eine Karte prägnant zu initialisieren:

#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);

Hinweis:

Unabhängig vom gewählten Ansatz, statische Karten werden beim Programmstart initialisiert und bleiben während der gesamten Programmausführung initialisiert.

Das obige ist der detaillierte Inhalt vonWie kann ich eine statische „std::map' in C initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn