Cześć,
mam do was dwa pytania:
- Mam jakiś vector np. o długości 10 elementów np.
vector<double>tab(10)
Każdy element tego vectora tj. np. tab[k] (0<k<10) ma jakiś swój adres tj. &tab[k] != NULL
Moje pytanie brzmi:
Czy zmieniając rozmiar vectora (np. do 100 elementów) adres wszystkich jego poprzednich elementów będzie takie sam czy mogą one ulec zmianie?
- dlaczego w poniższym kodzie wywala mi błąd, że out of range:
vector<double>tab; //(2)
//tab[0] = 3.0;
//tab[1] = 2.0;
tab.push_back(3.0);
tab.push_back(2.0);
tab.push_back(4.0);
tab[2] = 1.0;
cout << "tabsize = " << tab.size() << endl; //3
for(int i=0; tab.size();i++)
cout << "tab[i] = " << tab[i] << endl;
Gdy nie wyświetlam wyników to nie wywala mi błędu (tzn. gdy nie korzystam z tej ostatniej pętli)...
Z góry dziękuję wszystkim za pomoc w wyjaśnieniu szczególnie pierwszej zagwozdki.