Cześć,
Potrzebuję pomocy przy tworzenie dwuwymiarowej tablicy dynamicznej opartej o vector.
Napisałem "coś takiego":
int x = 20;
int y = 30;
vector< vector<char> > mapa(x, vector<char>(y));
fill(mapa.begin(), mapa.end(), 0);
for (auto i = 0; i < mapa.size(); i++)
{
for (auto j = 0; j < mapa.size(); j++)
cout << mapa[i][j] << ' ';
cout << endl;
}
Chciałbym wypełnić tą tablicę znakami (char). Jak to zrobić? (Jak skorzystać z fill, bo obecnie nie działa?)
Dlaczego, gdy dla 'y' ustawię wartość mniejszą niż dla 'x' otrzymuję błąs Expression: vector subscript out of range? Załóżmy, że ustawiam x=20 i y=15. Jak sprawdziłem mapa.size ma wartość 20, rozumiem że wychodzę poza zakres. Jak rozwiązać ten problem, aby tego uniknąć?
Pozdrawiam,
PH