Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

The MPL Reference Manual: for_each

Boost , ,

Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Front Page / Algorithms / Runtime Algorithms / for_each

for_each

Synopsis

template<
      typename Sequence
    , typename F
    >
void for_each( F f );
template<
      typename Sequence
    , typename TransformOp
    , typename F
    >
void for_each( F f );

Description

for_each представляет собой семейство перегруженных шаблонов функций:

  • для каждогоfприменяет объект функции выполненияfк каждому элементу в.Начало::type,конец<Последовательность>::тип, [скрыто].
  • for_each]применяет объект функции выполненияfк результату преобразованиякаждого элемента вначинающем::type,конце::type] диапазоне.

Parameters

Parameter Requirement Description
Последовательность Вперед последовательность Последовательность для итерации.
TransformOp Lambda Expression Трансформация.
f объект унарной функции Операция на время выполнения.

Expression semantics

Для любой Forward Sequence s, Lambda Expression op, и unary function objectf:

for_each<s>( f );
Return type:

void

Postcondition:

Equivalent to

typedef begin<Sequence>::type i1;
value_initialized< deref<i1>::type > x1;
f(boost::get(x1));
typedef next<i1>::type i2;
value_initialized< deref<i2>::type > x2;
f(boost::get(x2));
...
value_initialized< deref<in>::type > xn;
f(boost::get(xn));
typedef next<in>::type last;

where n == size<s>::value and last is identical to end<s>::type; no effect if empty<s>::value == true.

for_each<s,op>( f );
Return type:

void

Postcondition:

Equivalent to

for_each< transform_view<s,op> >( f );

Complexity

Точно size::valueприложения op и f.

Example

struct value_printer
{
    template< typename U > void operator()(U x)
    {
        std::cout << x << '\n';
    }
};
int main()
{
    for_each< range_c<int,0,10> >( value_printer() );
}

Статья The MPL Reference Manual: for_each раздела может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 21:10:39/0.008234977722168/1