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

The MPL Reference Manual: set

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 / Sequences / Classes / set

set

Description

set - это вариативная, ассоциативная, расширимая последовательность типов, поддерживающих постоянное включение и удаление элементов, а также тестирование на членство. set может содержать по крайней мере один элемент для каждого ключа.

Header

Sequence form Header
Variadic #include <boost/mpl/set.hpp>
Число #include n.hpp>

Expression semantics

В следующей таблице s является примером set, pos является итератором в s, и x, k, и t1,t2,...t>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [Примечание: См. below, например, как построить set из списка потенциально не уникальных типов — end note]

Expression Semantics
 set<t1,t2,... tn> setn<t1,t2,...tn>
set элементов t1,t2,...tn; см. Variadic Sequence.
 set<t1,t2,... tn>::type setn<t>1,t2,...tn>::type 
Идентичные для setn<t1,t2,... tn; см.Variadic Sequence.
begin::type Итератор, указывающий на начало s; см. Associative Sequence.
end::type Итератор, указывающий на конец s; см. Associative Sequence.
размер::type Размер s; см. Ассоциативная последовательность.
пустая::type Boolean Integral Constant c такие, что c:: value == true если и только если s является пустым; см. Associative Sequence.
фронт::type Первый элемент в s; см. Associative Sequence.
has_key::type Boolean Integral Constant c такие, что c:: value == true если и только если есть один или несколько элементов с ключом k в s; см.Associative Sequence.
count::type Количество элементов с ключом k в s; см. Associative Sequence.
заказ::type Уникальный неподписанный Integral Constant, связанный с ключом k в s; см. Associative Sequence.
 at::type at::type 
Элемент, связанный с ключом k в s; см. Associative Sequence.
key_type::type Идентичен x; см. Ассоциативный последовательность.
value_type::type Идентичен x; см. Ассоциативный последовательность.
insert::type

Новый set эквивалент s за исключением того, что

 at< t, key_type::type > 

value_type::type

insert::type Эквивалент insert::type; pos игнорируется.
erase_key::type Новый set эквивалент s, за исключением has_key k>:: value == false.
erase::type Эквивалент erase deref::type >::type.
clear::type Пустой set; см. clear.

Example

set инварианты:

typedef set< int,long,double,int_<5> > s;
BOOST_MPL_ASSERT_RELATION( size<s>::value, ==, 4 );
BOOST_MPL_ASSERT_NOT(( empty<s> ));
BOOST_MPL_ASSERT(( is_same< at<s,int>::type, int > ));
BOOST_MPL_ASSERT(( is_same< at<s,long>::type, long > ));
BOOST_MPL_ASSERT(( is_same< at<s,int_<5> >::type, int_<5> > ));
BOOST_MPL_ASSERT(( is_same< at<s,char>::type, void_ > ));

Constructing a set from a list of potentially non-unique types:

typedef fold<
      vector<int,int,long,long>
    , set0<>
    , insert<_1,_2>
    >::type s;
BOOST_MPL_ASSERT_RELATION( size<s>::value, ==, 2 );

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




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 09:26:28/0.0066311359405518/0