la cosa delle due dimensioni l'ho capita e anche il fatto che appena size diventa uguale a capacity faccio una nuova allocazione grande il doppio perchè chiaramente ci potrebbero essere dei casi di esaurimento della memoria, praticamente mi stai dicendo di creare per esempio un vettore dinamico di dimensione Size(esempio 10) e nel caso i dati nel file superino una certa dimensione Capacity (esempio 20) con un IF ( size > capacity) per dire, alloco un nuovo vettore dinamicamente con Capacity raddoppiata? e poi un'altra cosa che non ho capito quando dici "fai una nuova allocazione" intendi con lo stesso vettore che ho usato all'inizio o proprio un altro?