В С++ 11 вы можете использовать for
на основе диапазона, который действует как foreach
других языков. Он работает даже с обычными массивами C:
int numbers[] = { 1, 2, 3, 4, 5 };
for (int& n : numbers) {
n *= 2;
}
Как он знает, когда остановиться? Работает ли он только со статическими массивами, которые были объявлены в той же области, в которой используется for
? Как бы вы использовали этот for
с динамическими массивами?