ich eine Klasse Headerdatei habe Grid.h genannt, die das folgende zwei private Datenobjekt enthält:C++ Vektor von Vektoren
vector<int> column;
vector<vector<int>> row;
Und eine öffentliche Methode, dessen Prototyp in Grid.h ist so:
int getElement (unsigned int& col, unsigned int& row);
die Definition der oben genannten Funktion als solche in Grid.cpp definiert:
int getElement (unsigned int& col, unsigned int& row)
{
return row[row][col] ;
}
Wenn ich das Programm laufen lasse, erhalte ich diese Fehler:
error C2109: subscript requires array or pointer type
Was läuft falsch?
Gibt es Gründe, Sie nehmen diese Parameter als Referenz? Wenn überhaupt, sollten sie eine konstante Referenz sein, aber grundsätzlich sollten grundlegende Typen nicht als Referenz weitergegeben werden, es sei denn, Sie benötigen sie. Warum auch zwei Vektoren? Der Vektor innerhalb eines Vektors ist beides, Ihr 'Spalten'-Vektor ist nur etwas anderes. – GManNickG