Inicialización de vectores en C ++

Estoy usando vectores en mi código.

La línea que está causando el error es la siguiente:

<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>

La línea :

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

provoca un error de tiempo de ejecución. Sin embargo si inicializo el Vector con algún tamaño inicial como sigue:

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

En este caso el código funciona bien. Sin embargo, no quiero dar un tamaño inicial, ya que la cantidad de objetos en el vector será variable en el tiempo de ejecución. Por favor, ayúdame. Soy nuevo con C ++.

Para su referencia, la función completa del Método está aquí:

http://pastebin.com/2dUFEui5

Respuestas a la pregunta(2)

Su respuesta a la pregunta