Un vector agrupa diferents valors d'un mateix tipus sota un uníc nom.
(FIGURA)
-
vector<T> v;
declara
v
com un vector buit d'elements de tipus T. -
vector<T> v(n);
declara
v
com un vector d'n
elements de tipus T. -
vector<T> v(n, x);
declara
v
com un vector d'n
elements de tipus T, tots inicialitzats ax
.
-
v.size()
retorna el nombre d'elements en
v
. -
v[i]
retorna l'element a la posició
i
-èsima dev
. Les posicions comencen de 0 i van fins av.size() - 1
. Accedir a un element fora d'aquestes posicions és un error de programació (del qual C++ no es queixarà). -
v.front()
retorna el primer element de
v
(v[0]
). -
v.back()
retorna el darrer element de
v
(v[v.size() - 1]
). -
v.push_back(x)
afageix l'element
x
al final del vector (incrementant la seva mida). -
v.pop_back(x)
treu el darrer element del vector (decrementant la seva mida).
Es poden recórrer tots els elements d'un vector amb un bucle for
que els travessa d'esquerra a dreta:
vector<int> v = {4, 2, 1, 8, 4, 7};
for (int x : v) {
cout << x << endl;
}
Si el recorregut ha de canviar els valors del vector, cal que s'iteri amb una referència:
vector<int> v = {4, 2, 1, 8, 4, 7};
for (int& x : v) {
x *= 2;
}
for (int x : v) {
cout << x << endl;
}
Els textos es representen en C++ com a string
s. Podeu imaginar que un string
és un vector de
caràcters vector<char>
(no és exactament així, per` l'analogia és suficient per treballar).
Gràcies ;)