Re: range based for и временные объекты
От: DiPaolo Россия  
Дата: 05.09.22 01:45
Оценка:
Ну нет же. Там речь про другое:

If range-expression returns a temporary, its lifetime is extended until the end of the loop, as indicated by binding to the forwarding reference __range, but beware that the lifetime of any temporary within range-expression is not extended.

for (auto& x : foo().items()) { /* .. */ } // undefined behavior if foo() returns by value


То есть это замечание как раз про случай, когда ты вызываешь foo(), а потом берешь его айтемсы foo().items() и все это в рейндж фор.
Патриот здравого смысла
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.