Re[2]: boost::adaptors для временного объекта
От: df Россия  
Дата: 17.10.16 11:14
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:


df>>А как бы все-таки обмануть? Без того, чтобы предварительно сохранять результат GetData()?


EP>Придётся либо использовать только в рамках выражения (в котором живёт временная переменная), либо сохранять. Можно сделать обёртку, которая внутри будет хранить и исходный контейнер, и адаптеры (либо уже адаптированный range), и сама обёртка при этом будет является range. То есть примерно:

EP>
EP>auto doubled = make_wrapper_owner(GetData(), transformed(_1 * 2));
EP>


Думал мало-ли есть уже готовое что-то подобное. Но, наверное, не очень актуально это.
ПС: а без лямбды гораздо лаконичнее смотрится, спасибо. А то по привычке стал вставлять ее везде.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.