Heim >Backend-Entwicklung >C++ >Warum erhalte ich die Fehlermeldung „Index außerhalb des gültigen Bereichs', wenn ich Benutzereingaben in einen Vektor von Vektoren lese, die eine 2D-Matrix darstellen?

Warum erhalte ich die Fehlermeldung „Index außerhalb des gültigen Bereichs', wenn ich Benutzereingaben in einen Vektor von Vektoren lese, die eine 2D-Matrix darstellen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-03 01:21:021066Durchsuche

Why am I getting a

Vektor von Vektoren zur Matrixdarstellung

Frage:

Bei der Verwendung von Vektoren zur Darstellung einer 2D-Matrix tritt ein Fehler auf beim Versuch, Benutzereingaben zu lesen und an die Matrix anzuhängen. Der folgende Code löst einen Fehler „Index außerhalb des Bereichs“ aus.

<code class="cpp">vector<vector<int>> matrix;
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>

Antwort:

Der Fehler tritt auf, weil der Vektor der Vektoren nicht entsprechend initialisiert wurde Größen, bevor auf die Elemente zugegriffen wird. Um dieses Problem zu lösen, initialisieren Sie die Matrix wie folgt:

<code class="cpp">vector<vector<int>> matrix(RR, vector<int>(CC));</code>

Dieser Code erstellt eine Matrix aus RR-Zeilen und CC-Spalten, wobei jede Zelle auf 0 initialisiert wird. Jetzt kann der Code ohne Zugriff auf die Matrix zugreifen und diese bearbeiten Es tritt der Fehler „Index außerhalb des gültigen Bereichs“ auf.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „Index außerhalb des gültigen Bereichs', wenn ich Benutzereingaben in einen Vektor von Vektoren lese, die eine 2D-Matrix darstellen?. 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