![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
The MPL Reference Manual: BOOST_MPL_AUX_LAMBDA_SUPPORTBoost , ,
|
Front Page / Macros / Broken Compiler Workarounds / BOOST_MPL_AUX_LAMBDA_SUPPORT |
#define BOOST_MPL_AUX_LAMBDA_SUPPORT(arity, fun, params) \ unspecified token sequence \ /**/
Позволяет метафункциивеселодля использования вLambda Expressionна компиляторах, которые не поддерживают частичную специализацию шаблона или/и параметры шаблона шаблона. Ничего не расширяется на соответствующие компиляторы.
#include <boost/mpl/aux_/lambda_support.hpp>
Parameter | Requirement | Description |
---|---|---|
Арити | Интегральная постоянная | Удобство метафункции, т.е. количество параметров ее шаблона, включая по умолчанию. |
веселье | Юридический идентификатор Token | Название метафункции. |
парам | PP-тюпл | Названия параметров метафункции в их первоначальном порядке, включая по умолчанию. |
Для любой интегральной постояннойn, aМетафункцияудовольствие, и произвольные типыA1, ...An:
template< typename A1,... typename An > struct fun { // ... BOOST_MPL_AUX_LAMBDA_SUPPORT(n, fun, (A1,...An)) };
Precondition: | Appears in fun's scope, immediately followed by the scope-closing bracket (}). |
---|---|
Return type: | None. |
Semantics: | Expands to nothing and has no effect on conforming compilers. On compilers that don't support partial template specialization or/and template template parameters expands to an unspecified token sequence enabling fun to participate in Lambda Expressions with the semantics described in this manual. |
template< typename T, typename U = int > struct f { typedef T type[sizeof(U)]; BOOST_MPL_AUX_LAMBDA_SUPPORT(2, f, (T,U)) }; typedef apply1< f<char,_1>,long >::type r; BOOST_MPL_ASSERT(( is_same< r, char[sizeof(long)] > ));
Статья The MPL Reference Manual: BOOST_MPL_AUX_LAMBDA_SUPPORT раздела может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: ::
реклама |