Vektoren von Vektoren für die Matrixerstellung: Überwindung von Subscript-Out-of-Range-Fehlern
Beim Versuch, eine 2D-Matrix mithilfe von Vektoren von Vektoren zu erstellen, ist dies der Fall Es ist von entscheidender Bedeutung, die Datenstruktur korrekt zu initialisieren, um Indexfehler außerhalb des Bereichs zu vermeiden. Dieses Problem tritt auf, wenn versucht wird, auf Elemente eines Vektors zuzugreifen, ohne zuvor den erforderlichen Speicher zuzuweisen.
Problem lösen
Um dieses Problem zu beheben, müssen Sie den Vektor von initialisieren Vektoren auf die entsprechende Größe, bevor auf Elemente zugegriffen wird. Dies kann mit dem folgenden Code erreicht werden:
<code class="cpp">vector<vector<int>> matrix(RR, vector<int>(CC));</code>
Dieser Code erstellt einen Vektor der Größe RR, initialisiert mit CC-Vektoren, die jeweils mit 0 gefüllt sind. Jetzt können Sie mit dem folgenden sicher auf Elemente innerhalb des Matrixvektors zugreifen Syntax:
<code class="cpp">matrix[i][j] = user_input;</code>
Beispielverwendung
Bedenken Sie den von Ihnen bereitgestellten Beispielcode:
<code class="cpp">for(int i = 0; i < RR; i++) { for(int j = 0; j < CC; j++) { cout << "Enter the number for Matrix 1"; cin >> matrix[i][j]; } }</code>
Durch Initialisieren der Matrix mit der oben beschriebenen Methode, Sie können die Matrix jetzt mithilfe der Schleife sicher mit Benutzereingaben füllen. Der Fehler „Index außerhalb des gültigen Bereichs“ tritt nicht mehr auf, da Sie den erforderlichen Speicher für die Matrix zugewiesen haben.
Das obige ist der detaillierte Inhalt vonWie vermeide ich Indexfehler außerhalb des Bereichs beim Erstellen einer 2D-Matrix unter Verwendung von Vektoren von Vektoren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!