![]()  | 
![]() ![]() ![]() ![]()  | 
![]()  | 
The MPL Reference Manual: uniqueBoost , ,
  
  
   | 
||||||||||||||||||||||||
| Front Page / Algorithms / Transformation Algorithms / unique | 
template<
      typename Seq
    , typename Pred
    , typename In = unspecified
    >
struct unique
{
    typedef unspecified type;
};
Возвращает последовательность начальных элементов каждого поддиапазона исходной последовательностиСек, элементы которой все одинаковы.
[править]Примечание:Данная формулировка применяется к неинсертерной версии алгоритма. См. подразделСемантика экспрессиидля точного описания деталей алгоритма во всех случаях —
#include <boost/mpl/unique.hpp>
| Parameter | Requirement | Description | 
|---|---|---|
| Последовательность | Последовательность | Оригинальная последовательность. | 
| Пред | БинарноеЛамбда-выражение | Отношение эквивалентности. | 
| В | Вставить | Вставка. | 
Семантика выражения определяется только там, где она отличается от семантики выражения или не определена в. Обратимый алгоритм.
Для любойпередовой последовательностиs, двоичнойлямбда-выраженияпред, ивставкав:
typedef unique<s,pred,in>::type r;
| Return type: | A type.  | 
|---|---|
| Semantics: | If size<s>::value <= 1, then equivalent to typedef copy<s,in>::type r; иным эквивалентом typedef lambda<pred>::type p; typedef lambda<in::operation>::type in_op; typedef apply_wrap2< in_op , in::state , front<types>::type >::type in_state; typedef fold< s , pair< in_state, front<s>::type > , eval_if< apply_wrap2<p, second<_1>, _2> , identity< first<_1> > , apply_wrap2<in_op, first<_1>, _2> > >::type::first r;  | 
Линейный. Выполняет ровноразмер::value-1приложенияпред, и самое большееразмер::valueвставки.
Статья The MPL Reference Manual: unique раздела может быть полезна для разработчиков на c++ и boost.
:: Главная :: ::
реклама  |