![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
The MPL Reference Manual: reverse_iter_foldBoost , ,
|
Front Page / Algorithms / Iteration Algorithms / reverse_iter_fold |
template< typename Sequence , typename State , typename BackwardOp , typename ForwardOp = _1 > struct reverse_iter_fold { typedef unspecified type; };
Возвращает результат последовательного применения бинарныхНазадВ результате предыдущегоНазадПризывГосударствоЕсли это первый звонок, и каждый итератор в диапазоне [начинают
#include <boost/mpl/reverse_iter_fold.hpp>
Parameter | Requirement | Description |
---|---|---|
Последовательность | Последовательность | Последовательность для итерации. |
Государство | Любой тип | Начальное состояние для первогоBackwardOp/ForwardOpприложения. |
Назад | БинарноеЛамбда-выражение | Операция должна быть выполнена на обратном пути. |
Вперед | БинарноеЛамбда-выражение | Операция должна быть выполнена на переднем перекрестке. |
Для любойПередней Последовательностиs, двоичнойLambda Expressionback_opиforward_op, и произвольного типасостояния:
typedef reverse_iter_fold< s,state,backward_op >::type t;
Return type: | A type. |
---|---|
Semantics: | Equivalent to typedef begin<s>::type i1; typedef next<i1>::type i2; ... typedef next<in>::type last; typedef apply<backward_op,state,in>::type staten; typedef apply<backward_op,staten,in-1>::type staten-1; ... typedef apply<backward_op,state2,i1>::type state1; typedef state1 t; where n == size<s>::value and last is identical to end<s>::type; equivalent to typedef state t; if empty<s>::value == true. |
typedef reverse_iter_fold< s,state,backward_op,forward_op >::type t;
Return type: | A type. |
---|---|
Semantics: | Equivalent to typedef reverse_iter_fold< Sequence , iter_fold<s,state,forward_op>::type , backward_op >::type t; |
Точноразмер:: значениеприложенияback_opиforward_op.
Составьте список итераторов к отрицательным элементам в последовательности.
typedef vector_c<int,5,-1,0,-7,-2,0,-5,4> numbers; typedef list_c<int,-1,-7,-2,-5> negatives; typedef reverse_iter_fold< numbers , list<> , if_< less< deref<_2>,int_<0> >, push_front<_1,_2>, _1 > >::type iters; BOOST_MPL_ASSERT(( equal< negatives , transform_view< iters,deref<_1> > > ));
Статья The MPL Reference Manual: reverse_iter_fold раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |