Re: boost::adaptors для временного объекта
От: swingus  
Дата: 15.10.16 16:51
Оценка:
Оператор | перегружен для адаптора и рэнджа и возвращает рэндж. Рэндж по определению не является владельцем данных, что-то вроде view (так, кстати, это называется в новых Ranges Эрика Неблера). Так что нужно провернуть все действия с адапторами, пока временный объект не разрушился, значит, нужно писать oneliner.


   std::cout << 
    (
        std::vector<int>{ 1,2,3,4,5,6,7,8,9 } | 
        boost::adaptors::transformed
        ([](auto& i) { return i * 2; })
    ) << std::endl;

Здравствуйте, df, Вы писали:

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