Klasa Vector
Ostatnio zmodyfikowano 2011-09-05 20:33
czarek1959 Temat założony przez niniejszego użytkownika |
Klasa Vector » 2011-09-05 18:23:53 Witam, Mam taki prosty programik, który się kompiluje: #include <iostream> #include <vector>
using namespace std;
struct st1 { vector < int > tab1; };
struct st2 { vector < st1 > tab2; };
int main() { return 0; } Czy tak konstrukcja jest możliwa jako wektor wektorów i jak się do tego dobrać tzn. jak to wypełnić. Chodzi mi o 2-elementową tablicę wektorów Uprzejma prośba o sugestie i pomoc. Czarek |
|
pekfos |
» 2011-09-05 18:36:22 ehhh vector < vector < int > > tab;
tab[ 2 ][ 1 ] = 3; |
|
czarek1959 Temat założony przez niniejszego użytkownika |
» 2011-09-05 18:48:35 Spróbowałem i problem w tym, że program się zawiesza - "wywala" po vector < vector < int > > tab.
Używam Code::Blocks.
I jeszcze jedno - jak w tym przypadku zastosować metodę push_back(...)?
Jeśli zrobię np. tab[0][0].push_back(3) do kompilator sygnalizuje błąd. |
|
pekfos |
» 2011-09-05 18:57:48 pomyśl!! tab[ 0 ] tab[ 0 ][ 0 ] tab[ 0 ][ 0 ].push_back()
|
|
m4tx |
» 2011-09-05 18:58:20 |
|
czarek1959 Temat założony przez niniejszego użytkownika |
» 2011-09-05 20:07:46 vector < vector < int > > tab;
tab[ 2 ][ 1 ] = 3;
Ok zostawmy rady poczytaj dokładnie, bo czytałem i nie daje to odpowiedzi na moje pytanie. Pytanie do Pefkos'a - dlaczego powyższe nie działa. |
|
czarek1959 Temat założony przez niniejszego użytkownika |
» 2011-09-05 20:33:56 Już sobie poradziłem więc zamykam temat. Rady typu poczytaj sobie dokładnie lub a po co Ci to można sobie wsadzić w ... Forum jest chyba po to aby sobie pomagać a odpowiedzi tego typu to uniwersalna metoda pasująca do wszystkiego lub jak ktoś nie wie o co chodzi i jak rozwiązać problem. Dla innych użytkowników (może się komuś kiedyś przyda): vector < vector < int > > tab;
tab[ 0 ].resize( 3 );
tab[ 0 ][ 0 ] = 5
Dzięki Pefkos za pomoc. |
|
« 1 » |