Учитывая этот пример кода С++ 11:
for ( const auto &foo : bar() )
{
// ... do something with foo...
}
Является ли гарантированным стандартом, что выражение bar()
в этом примере оценивается только один раз?
Или это может быть вызвано на каждой итерации цикла?