Inicjalizacja wektorowa w C ++

Używam wektorów w moim kodzie.

Linia powodująca błąd jest następująca:

<code>vector<Node> alt_seq ;
alt_seq = vector<Node>(1000);
for(int j=0; j<alt_cf.getNoOfNodes(i); j++)
{
    Node temp_node = *alt_itr;
    alt_itr++;
    alt_seq.push_back(temp_node);
    }
</code>

Linia :

<code> alt_seq.push_back(temp_node);
</code>

powoduje błąd wykonania. Jeśli jednak zainicjalizuję wektor o pewnym początkowym rozmiarze w następujący sposób:

<code>vector<Node> alt_seq(1000) ;
</code>

W tym przypadku kod działa poprawnie. Nie chcę jednak podawać rozmiaru początkowego, ponieważ liczba obiektów w wektorze będzie zmienna w czasie wykonywania. Proszę pomóż mi. Jestem nowym użytkownikiem C ++.

Dla Twojej wygody pełna funkcja metody znajduje się tutaj:

http://pastebin.com/2dUFEui5

questionAnswers(2)

yourAnswerToTheQuestion