mogę łatwo symulować for .. in
pętli przy użyciu list initializer dla dostępu odczytuJak używać pętli listy inicjalizacyjnej do modyfikowania elementów?
std::list<int> foo, bar, baz;
int main()
{
foo.push_back(3);
foo.push_back(2);
bar.push_back(1);
for (auto &x : {foo, bar, baz}) {
// x.push_back(42);
std::cout << x.size() << std::endl;
}
return 0;
}
Drukuje:
2
1
0
Co należy zrobić, aby można było modyfikować rzeczywistych obiektów, podobnie jak w skomentowała linia:
// x.push_back(42);
bardzo ściśle powiązane: https://stackoverflow.com/questions/31724863/range-based-for-with -brace-initializer-over-non-const-values –