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

The MPL Reference Manual: BOOST_MPL_AUX_LAMBDA_SUPPORT

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 / Macros / Broken Compiler Workarounds / BOOST_MPL_AUX_LAMBDA_SUPPORT

BOOST_MPL_AUX_LAMBDA_SUPPORT

Synopsis

#define BOOST_MPL_AUX_LAMBDA_SUPPORT(arity, fun, params) \
    unspecified token sequence \
/**/

Description

Позволяет метафункциивеселодля использования вLambda Expressionна компиляторах, которые не поддерживают частичную специализацию шаблона или/и параметры шаблона шаблона. Ничего не расширяется на соответствующие компиляторы.

Parameters

Parameter Requirement Description
Арити Интегральная постоянная Удобство метафункции, т.е. количество параметров ее шаблона, включая по умолчанию.
веселье Юридический идентификатор Token Название метафункции.
парам PP-тюпл Названия параметров метафункции в их первоначальном порядке, включая по умолчанию.

Expression semantics

Для любой интегральной постоянной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.

Example

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.




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-07-04 21:25:26/0.0058999061584473/0