![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
The MPL Reference Manual: InserterBoost , ,
|
Front Page / Algorithms / Concepts / Inserter |
Inserter является заменой STL Output Iterator. Под капотом это просто тип, содержащий две сущности: состояние и операцию . При переходе к алгоритму преобразования , двоичная операция вставки вызывается для каждого элемента, который обычно записывается в итератор вывода, с самим элементом (как второй аргумент) и результатом вызова предыдущей операции - или, для самого первого элемента, начальное состояние вставки.
Технически, вместо того, чтобы принимать один параметр вставки, алгоритмы преобразования могут принимать состояние и операцию "выход" отдельно. Однако группирование их в единый параметр приближает алгоритмы семантически и синтаксически к их аналогам STL, что значительно упрощает многие распространенные варианты использования.
В следующей таблице и последующих спецификациях in является моделью Inserter.
Expression | Type |
---|---|
in::state | Любой тип |
в::операция | Бинарный Lambda Expression |
Expression | Semantics |
---|---|
in::state | Начальное состояние вставки. |
в::операция | Операция вставки "output". |
typedef transform< range_c<int,0,10> , plus<_1,_1> , back_inserter< vector0<> > >::type result;
Статья The MPL Reference Manual: Inserter раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |