Perché questo codice scrive un numero indefinito di numeri interi apparentemente non inizializzati?
#include <iostream>
#include <vector>
using namespace std;
int main()
{
for (int i : vector<vector<int>>{{77, 777, 7777}}[0])
cout << i << ' ';
}
Mi aspettavo che l'output fosse 77 777 7777.
Questo codice dovrebbe essere indefinito?
using std::vectorinvece diusing namespace std;per evitare che questa cattiva pratica si diffonda.