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

The MPL Reference Manual: bitand_

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 / Metafunctions / Bitwise Operations / bitand_

bitand_

Synopsis

template<
      typename T1
    , typename T2
    , typename T3 = unspecified
    ...
    , typename Tn = unspecified
    >
struct bitand_
{
    typedef unspecified type;
};

Description

Возвращает результатбитовой и(&) работы его аргументов.

Parameters

Parameter Requirement Description
Т1,Т2, ...Тн Интегральная постоянная Аргументы операции.

[править]Примечание:Требования, перечисленные в этой спецификации, являются теми, которые налагаются реализацией по умолчанию. См.Концепция численной метафункциидля деталей о том, как обеспечить реализацию для определенного пользователем числового типа, который не удовлетворяет требованиямИнтегральная постоянная. —Конечная примечание

Expression semantics

Для любойинтегральной постояннойсс1,с2, ...сс:

typedef bitand_<c1,...cn>::type r;
Return type:

Integral Constant.

Semantics:

Equivalent to

typedef integral_c<
      typeof(c1::value & c2::value)
    , ( c1::value & c2::value )
    > c;
typedef bitand_<c,c3,...cn>::type r;
typedef bitand_<c1,...cn> r;
Return type:

Integral Constant.

Semantics:

Equivalent to

struct r : bitand_<c1,...cn>::type {};

Complexity

Амортизированное постоянное время.

Example

typedef integral_c<unsigned,0> u0;
typedef integral_c<unsigned,1> u1;
typedef integral_c<unsigned,2> u2;
typedef integral_c<unsigned,8> u8;
typedef integral_c<unsigned,0xffffffff> uffffffff;
BOOST_MPL_ASSERT_RELATION( (bitand_<u0,u0>::value), ==, 0 );
BOOST_MPL_ASSERT_RELATION( (bitand_<u1,u0>::value), ==, 0 );
BOOST_MPL_ASSERT_RELATION( (bitand_<u0,u1>::value), ==, 0 );
BOOST_MPL_ASSERT_RELATION( (bitand_<u0,uffffffff>::value), ==, 0 );
BOOST_MPL_ASSERT_RELATION( (bitand_<u1,uffffffff>::value), ==, 1 );
BOOST_MPL_ASSERT_RELATION( (bitand_<u8,uffffffff>::value), ==, 8 );

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




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 22:53:59/0.027883052825928/1