parent nodes: STLapuntes
Vector
* Tamaño variable
* Mismo tipo de elementos
* No tiene control de rango, si pedimos algo más allá de su límite devolverá vacío o basura
struct Entry {
string name;
int number;
};
Entry phone_book[1000]; //array. 1000 posiciones se usen o no. No se puede ampliar a + de 1000
void print_entry(int i) // simple use Array
{
cout << phone_book[i].name << ' ' << phone_book[i].number << '\n';
}
vector<Entry> phone_book(1000); //vector. Tamanyo inicial, puede ampliarse con add_entries
void print_entry(int i) //simple use, exactly as for array
{
cout << phon_book[i].name << ' ' << phone_book[i].number << '\n';
}
void add_entries(int n) //increase size by n
{
phone_book.resize(phone_book.size() + n);
}
OJO! Es un error típico, por suerte es detectado por el compilador:vector<Entry> phone_book(1000); // Vector de 1000 elementos
vector<Entry> phone_book[1000]; // Array de 1000 vectores vacíos
VectorEjemplo