Heim > Backend-Entwicklung > C++ > Wie greife ich mithilfe von Iteratoren effizient auf Werte in einer verschachtelten C-Map zu?

Wie greife ich mithilfe von Iteratoren effizient auf Werte in einer verschachtelten C-Map zu?

Linda Hamilton
Freigeben: 2024-12-02 22:09:15
Original
305 Leute haben es durchsucht

How Do I Efficiently Access Values in a Nested C   Map Using Iterators?

Zugriff auf Werte in einer mehrschichtigen C-Karte mithilfe von Iteratoren

Iterieren durch eine C-Karte von Karten, wobei die inneren Karten Schlüssel enthalten Wertepaare können mithilfe von Iteratoren effizient erreicht werden. So können Sie es machen:

Deklarieren Sie die Karte wie folgt:

std::map<std::string, std::map<std::string, std::string>> m;
Nach dem Login kopieren

Um die äußere Karte zu durchlaufen, verwenden Sie Folgendes Syntax:

for (auto& outer_entry : m) {
  std::string outer_key = outer_entry.first;
  std::map<std::string, std::string>& inner_map = outer_entry.second;

  // Iterate through the inner map using a nested loop
  for (auto& inner_entry : inner_map) {
    std::string inner_key = inner_entry.first;
    std::string inner_value = inner_entry.second;

    // Access the inner values here
  }
}
Nach dem Login kopieren

Beispiel:

m["name1"]["value1"] = "data1";
m["name1"]["value2"] = "data2";
m["name2"]["value1"] = "data1";
m["name2"]["value2"] = "data2";
m["name3"]["value1"] = "data1";
m["name3"]["value2"] = "data2";

for (auto& outer_entry : m) {
  std::cout << "Outer Key: " << outer_entry.first << std::endl;
  for (auto& inner_entry : outer_entry.second) {
    std::cout << "Inner Key: " << inner_entry.first << " - Value: " << inner_entry.second << std::endl;
  }
  std::cout << std::endl;
}
Nach dem Login kopieren

Ausgabe:

Outer Key: name1
Inner Key: value1 - Value: data1
Inner Key: value2 - Value: data2

Outer Key: name2
Inner Key: value1 - Value: data1
Inner Key: value2 - Value: data2

Outer Key: name3
Inner Key: value1 - Value: data1
Inner Key: value2 - Value: data2
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie greife ich mithilfe von Iteratoren effizient auf Werte in einer verschachtelten C-Map zu?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage