Stai usando un browser non aggiornato. Potresti non visualizzare correttamente questo o altri siti web. Dovreste aggiornare o usare un browser alternativo.
vector<int> vec = { 2, 4, 6, 7};
for (auto e: vec) {
cout << e << "\n";
}
è (quasi) syntactic sugar per:
C++:
for (vector<int>::iterator it = vec.begin(); it != vec.end(); ++it) {
int e = *it;
cout << e << "\n";
}
e funziona ovunque hai begin e end.
Dico "quasi" syntactic sugar perché in realtà la faccenda è un po' più complicata e il for each funziona anche sugli array in style C, sugli string literals, etc... funziona ovunque ti aspetti che possa funzionare.