vector<int> v;
v.push_back(1);
v.push_back(v[0]);
Se il secondo push_back provoca una riallocazione, il riferimento al primo numero intero nel vettore non sarà più valido. Quindi questo non è sicuro?
vector<int> v;
v.push_back(1);
v.reserve(v.size() + 1);
v.push_back(v[0]);
Questo lo rende sicuro?
push_back
. Un altro poster ha notato un bug in esso , che non gestiva correttamente il caso che descrivi. Nessun altro, per quanto posso dire, ha sostenuto che non si trattava di un bug. Non dire che è una prova conclusiva, solo un'osservazione.