|
Boost Pointer Container LibraryBoost , ,
Pointer Container Library
В этом разделе описаны все общие операции для всех ассоциативных указательных контейнеров (в дополнение кreversible_ptr_container)..
Иерархия:
См. также:
Навигация:
Синопсис:
namespace boost
{
template
<
class Key,
class CloneAllocator = heap_clone_allocator
>
class associative_ptr_container
{
public: // typedefs
typedef ... key_type;
typedef ... key_compare;
typedef ... value_compare;
public: // observers
key_compare key_comp() const;
value_compare value_comp() const;
public: // modifiers
template< typename InputIterator >
void insert( InputIterator first, InputIterator last );
template< class InputRange >
void insert( const InputRange& r );
void erase( iterator position );
size_type erase( const key_type& x );
template< class Range >
void erase( const Range& r );
void erase( iterator first, iterator last );
public: // algorithms
iterator find( const key_type& x );
const_iterator find( const key_type& x ) const;
size_type count( const key_type& x ) const;
iterator lower_bound( const key_type& x );
const_iterator lower_bound( const key_type& x ) const;
iterator upper_bound( const key_type& x );
const_iterator upper_bound( const key_type& x ) const;
iterator_range<iterator> equal_range( const key_type& x );
iterator_range<const_iterator> equal_range( const key_type& x ) const;
}; // class 'associative_ptr_container'
} // namespace 'boost'
typedef...key_type; - если мы имеем дело с картой, то просто ключевой тип
- Если мы имеем дело с набором, тоопосредованныйтип ключа, то есть данныйptr_set,ключ_type*будет.Т*.
типдеф...key_compare; - тип объекта сравнения, который определяет порядок элементов в контейнере
typedef...value_compare; - тип объекта сравнения, определяющий порядок элементов в контейнере
- Если мы имеем дело с картой, то это сравнение просто перенаправляется на операцию сравненияkey_compare.
шаблон<имя типаInputIterator>пустотавставкаInputIteratorпервый,InputIteratorпоследний; - Требования:[первый, последний]является допустимым диапазоном
- Эффекты: вставьте клонированный диапазон
- Безопасность: Базовая гарантия
шаблон<класс>voidвставкаconstinputRange &r;r - Эффекты:вставкаповышение::gin(r),повышение::end(r);
пустотастираниеитераторположение; - Требования:положениеявляется действительным итератором из контейнера
- Эффекты: удаляет элемент, определенный поположению.
- Альбом: Nothing
size_typeeraseconstkey_type&x; - Эффекты: удаляет все элементы в контейнере с ключом, эквивалентнымx, и возвращает количество стертых элементов.
- Альбом: Nothing
voideraseiteratorfirst,iteratorlast; - Требования:[первый, последний]является допустимым диапазоном
- Эффекты: Удаляет диапазон элементов, определенных[первый, последний].
- Альбом: Nothing
шаблон<классдиапазонпустотастираниеконстконстRange&r; - Эффекты:стираниеповышение::gin(r),повышение::end(r);
итератор найдитеconstKey&x;
const_iteratorfind [constKey&x]const; - Эффекты: поиск ключа и возвратконца()при отказе.
- Сложность: логарифмическая
размер_типколичество [констКлюч&амп;х]конст; - Эффекты: Подсчитывает элементы с ключом, эквивалентнымx
- Сложность: логарифмическая
итератор low_boundconstKey&x;
const_iteratorlower_boundconstKey&xconst; - Эффекты: возвращает итератор, указывающий на первый элемент с ключом не менееx
- Сложность: логарифмическая
итератор верхний_связанныйконстKey&x;
const_iteratorupper_boundconstKey&xconst - Эффекты: возвращает итератор, указывающий на первый элемент с ключом больше, чемх
- Сложность: логарифмическая
iterator_range equal_rangeconstKey&x;
итератор_rangeequal_rangeconstKey&xconst; - Эффекты:возвращениеповышение::make_iterator_rangeнижний_boundxверхний_boundx;
- Сложность: логарифмическая
| Copyright: | Thorsten Ottosen 2004-2006. Use, modification and distribution is subject to the Boost Software License, Version 1.0 (see LICENSE_1_0.txt). |
Статья Boost Pointer Container Library раздела может быть полезна для разработчиков на c++ и boost.
:: Главная :: ::
|
|