Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Vector - alokowanie pamięci, odwoływanie się do pustych miejsc.

Ostatnio zmodyfikowano 2015-04-07 12:40
Autor Wiadomość
GabrysCichy
Temat założony przez niniejszego użytkownika
Vector - alokowanie pamięci, odwoływanie się do pustych miejsc.
» 2015-04-06 20:42:09
Działam aktualnie na STLowym Vectorze. Wypisuję ten vector na cout, korzystając z kolejnych jego elementów czyli Wektor.
Problem polega na tym, że do wektora wrzucam kilka elementów poprzez funkcję Wektor.push_back( "cos" ), i te kilka ogranicza się do 3, 4 albo 5. Natomiast wypisuję na cout kolejne elementy tego Wektora aż do numeru 18. Oczywiście wywala błąd bo odwołuję się do czegoś spoza tablicy. Próbowałem to rozwiązać używając funkcji Wektor.reserve(18) ale to zmieniło tyle, że gdy wrzucałem 3 elementy, to czwarty był pustym miejscem na cout, tak jak chciałem ale każdy dalej niestety już daje błąd. Jak mógłbym to rozwiązać?
Nie jestem pewny czy będą to ważne uwagi, ale jest to wector w którym przechowuję stringi. Oraz potrzebuję by kolejne elementy były "puste". Mam na myśli tutaj, że na cout pokazywać będą puste pola a nie będzie przeszkody by w kolejnych etapach programu poprzez funkcję push_back dodać następne elementy zamiast tych pustych.
P-130293
Quirinnos
» 2015-04-06 20:45:09
To dodaj pusty string, zamiast kombinować. Nie dziw się, że jak chcesz odwołać się do niezaalokowanej pamięci to dostajesz błędy.
P-130294
RazzorFlame
» 2015-04-07 10:30:32
Użyj std::vector::resize(size_type); zamiast reserve.
P-130311
michal11
» 2015-04-07 12:40:30
A dlaczego musisz wypisać aż 18 ?
P-130316
« 1 »
  Strona 1 z 1