Modificar uma estrutura de dados enquanto itera sobre ela
O que acontece quando você adiciona elementos a uma estrutura de dados, como um vetor, enquanto itera sobre ele. Não posso fazer isso?
Eu tentei isso e ele quebra:
int main() {
vector<int> x = { 1, 2, 3 };
int j = 0;
for (auto it = x.begin(); it != x.end(); ++it) {
x.push_back(j);
j++;
cout << j << " .. ";
}
}