![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
The MPL Reference Manual: applyBoost , ,
|
Front Page / Metafunctions / Invocation / apply |
template< typename F > struct apply0 { typedef unspecified type; }; template< typename F, typename A1 > struct apply1 { typedef unspecified type; }; ... template< typename F, typename A1,... typename An > struct applyn { typedef unspecified type; }; template< typename F , typename A1 = unspecified ... , typename An = unspecified > struct apply { typedef unspecified type; };
Называется Метафункционный класс или Ламбда экспрессия Ф с аргументами A1,... A.
#include <boost/mpl/apply.hpp>
Parameter | Requirement | Description |
---|---|---|
F | Выражение Ламбды | Выражение, чтобы вызвать. |
A1,... An | Любой тип | Призывы. |
Для любого Ламбда экспрессия f и произвольных типов a1,...an:
typedef applyn<f,a1,...an>::type t; typedef apply<f,a1,...an>::type t;
Return type: | Any type. |
---|---|
Semantics: | Equivalent to typedef apply_wrapn< lambda<f>::type,a1,... an>::type t;. |
template< typename N1, typename N2 > struct int_plus : int_<( N1::value + N2::value )> { }; typedef apply< int_plus<_1,_2>, int_<2>, int_<3> >::type r1; typedef apply< quote2<int_plus>, int_<2>, int_<3> >::type r2; BOOST_MPL_ASSERT_RELATION( r1::value, ==, 5 ); BOOST_MPL_ASSERT_RELATION( r2::value, ==, 5 );
Статья The MPL Reference Manual: apply раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |