


Was ist der effizienteste Weg, einen 2D-std::vector in C zu initialisieren?
Dec 04, 2024 am 04:36 AMZweidimensionale std::vectors effizient initialisieren
Betrachten Sie den folgenden Codeausschnitt:
std::vector< std::vector<int> > fog; for(int i=0; i<A_NUMBER; i++) { std::vector <int> fogRow; for(int j=0; j<OTHER_NUMBER; j++) { fogRow.push_back(0); } fog.push_back(fogRow); }
Diese Methode Die Initialisierung eines zweidimensionalen std::vector erscheint ineffizient. Ein alternativer Ansatz, der den Konstruktor std::vector::vector(count, value) nutzt, ist verfügbar:
std::vector<std::vector<int>> fog( ROW_COUNT, std::vector<int>(COLUMN_COUNT)); // Defaults to zero initial value
Wenn ein anderer Standardwert als Null gewünscht wird, geben Sie ihn wie unten gezeigt an:
std::vector<std::vector<int>> fog( ROW_COUNT, std::vector<int>(COLUMN_COUNT, 4));
Darüber hinaus ermöglicht die in C 11 eingeführte einheitliche Initialisierung eine präzise Initialisierung mit {}:
std::vector<std::vector<int>> fog { { 1, 1, 1 }, { 2, 2, 2 } };
Das obige ist der detaillierte Inhalt vonWas ist der effizienteste Weg, einen 2D-std::vector in C zu initialisieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Welche Werte sind von C -Sprachfunktionen zurückgegeben? Was bestimmt den Rückgabewert?

GULC: C -Bibliothek von Grund auf neu gebaut

C Sprachfunktionsformat -Buchstaben -Fall -Konvertierungsschritte

Was sind die Definitionen und Aufrufregeln von C -Sprachfunktionen und was sind die?

eindeutiger Gebrauch und Phrasenfreigabe

Wo ist der Rückgabewert der C -Sprachfunktion im Speicher?

Wie funktioniert die C -Standard -Vorlagenbibliothek (STL)?

Wie benutze ich Algorithmen aus der STL (sortieren, finden, transformieren usw.) effizient?
