![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
The MPL Reference Manual: reverse_replaceBoost , ,
|
Front Page / Algorithms / Transformation Algorithms / reverse_replace |
template< typename Sequence , typename OldType , typename NewType , typename In = unspecified > struct reverse_replace { typedef unspecified type; };
Возвращает обратную копию исходной последовательности, где каждый тип, идентичный OldType, был заменен NewType.
[Примечание:<1] Эта формулировка применяется к версии (версиям) алгоритма без вставки. См. подраздел Семантика выражений для точной спецификации деталей алгоритма во всех случаях — конечное примечание
#include <boost/mpl/replace.hpp>
Parameter | Requirement | Description |
---|---|---|
Последовательность | Вперед последовательность | Оригинальная последовательность. |
OldType<3 | Любой тип | Тип, который необходимо заменить. |
NewType | Любой тип | Тип для замены. |
В | Вставка | Вставка. |
Семантика выражения определяется только там, где она отличается от или не определена в Обратимый алгоритм.
Для любой Forward Sequence, Inserterin и произвольных типов x и y:
typedef reverse_replace<s,x,y,in>::type r;
Return type: | A type. |
---|---|
Semantics: | Equivalent to typedef reverse_replace_if< s,y,is_same<_,x>,in >::type r; |
Линейный. Выполняет точно size::value сравнения для идентичности/вставки.
typedef vector<int,float,char,float,float,double> types; typedef vector<double,double,double,char,double,int> expected; typedef reverse_replace< types,float,double >::type result; BOOST_MPL_ASSERT(( equal< result,expected > ));
) |
Статья The MPL Reference Manual: reverse_replace раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |