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

Unbounded array

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

Unbounded Array Storage

Unbounded Array

Description

Шаблонный класс<unbounded_array<T, ALLOC>>реализует неограниченный массив хранения с использованием распределителя. Неограниченный массив похож на<std::vector>в том, что он может расти в размерах за пределами любой фиксированной связи. Однако<unbounded_array>нацелено на оптимальную производительность. При этом<unbounded_array>не является<Sequence>образцом<std::vector>.

При изменении размера<unbounded_array>будет перераспределено его хранилище, даже если новое требование к размеру меньше. Поэтому нецелесообразно изменять размер<unbounded_array>.

Example

#include <boost/numeric/ublas/storage.hpp>
int main () {
    using namespace boost::numeric::ublas;
    unbounded_array<double> a (3);
    for (unsigned i = 0; i < a.size (); ++ i) {
        a [i] = i;
        std::cout << a [i] << std::endl;
    }
}

Definition

Определяется в заголовке storage.hpp.

Template parameters

Parameter Description Default
<T> Тип объекта, хранящегося в массиве.
<ALLOC> Распределитель STL Источник: Allocator

Model of

Хранение

Type requirements

Нет, за исключением тех, которые установлены требованиями к хранению.

Public base classes

Нет.

Members

  • Описание не описывает, что на самом деле делает член, это можно посмотреть в соответствующей концептуальной документации, но вместо этого содержит замечание о реализации члена внутри этой модели концепции.
  • Типография:
    • Члены, которые не являются частью реализованных концепций,в синем.
Member Where defined Description
<value_type>Контейнер
<pointer>КонтейнерОпределяется как<value_type*>
<const_pointer>КонтейнерОпределяется как<const value_type*>
<reference>КонтейнерОпределяется как<value_type&>
<const_reference>КонтейнерОпределяется как<const value_type&>
<size_type>КонтейнерОпределяется как<Alloc::size_type>
<difference_type>КонтейнерОпределяется как<Alloc::difference_type>
<iterator>КонтейнерОпределяется как<pointer>
<const_iterator>КонтейнерОпределяется как<const_pointer>
<revere_iterator>КонтейнерОпределяется как<std::reverse_iterator<iterator>>
<const_revere_iterator>КонтейнерОпределяется как<std::reverse_iterator<const_iterator>>
allocator_typeОпределяется как ALLOC
<explicitunbounded_array (ALLOC &a = ALLOC())> Хранение Создает<unbounded_array>, который удерживает нулевые элементы, используя заданный распределитель.
<explicitunbounded_array (size_type size, ALLOC &a = ALLOC())> Хранение Создает неинициализированный<unbounded_array>, который содержит<size>элементы, используя заданный распределитель. Все элементы построены по умолчанию.
<unbounded_array (size_type size, const T& init, ALLOC& a = ALLOC())> Хранение Создает инициализированный<unbounded_array>, который содержит<size>элементы, используя заданный распределитель. Все элементы построены из значения<init>.
<unbounded_array (const unbounded_array &a)> Контейнер Конструктор копий.
<~unbounded_array ()> Контейнер 82, то есть саму себя.
<void resize (size_type n)> Хранение <unbounded_array>,<n>, [скрыто], [скрыто]. Ценности не инициализируются.
<void resize(size_type n, const T& t)> Хранение <unbounded_array>,<n>,<n>,<n>. Значения являются копиями<t>
<size_type size () const> Контейнер Возвращает размер<unbounded_array>.
<const_reference operator [] (size_type i) const> Контейнер Возвращает<const>ссылку на<i>-й элемент.
<reference operator [] (size_type i)> Контейнер Возвращает ссылку на<i>-й элемент.
<unbounded_array &operator = (const unbounded_array &a)> Контейнер Оператор назначения.
<unbounded_array &assign_temporary (unbounded_array &a)> Назначает временное. Может измениться<a>.
<void swap (unbounded_array &a)> Контейнер Изменяет содержимое массивов.
<const_iterator begin () const> Контейнер Возвращает<const_iterator>, указывая на начало<unbounded_array>.
<const_iterator end () const> Контейнер <const_iterator>, что указывает на конец<unbounded_array>.
<iterator begin ()> Контейнер Возвращает<iterator>, указывая на начало<unbounded_array>.
<iterator end ()> Контейнер Возвращает<iterator>, указывая на конец<unbounded_array>.
<const_reverse_iterator rbegin () const> Обратный контейнер Возвращает<const_reverse_iterator>, указывая на начало обратного<unbounded_array>.
<const_reverse_iterator rend () const> Обратный контейнер Возвращает<const_reverse_iterator>, указывая на начало обратного<unbounded_array>.
<reverse_iterator rbegin ()> Обратный контейнер Возвращает<const_reverse_iterator>, указывая на начало обратного<unbounded_array>.
<reverse_iterator rend ()> Обратный контейнер Возвращает<const_reverse_iterator>, указывая на начало обратного<unbounded_array>.

Авторское право (©) 2000-2002 Йорг Уолтер, Матиас Кох
На использование, модификацию и распространение распространяется лицензия Boost Software License, Version 1.0. (См. сопроводительный файл LICENSE_1_0.txt или копию по адресу) http://www.boost.org/LICENSE_1_0.txt.

Статья Unbounded array раздела может быть полезна для разработчиков на c++ и boost.




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



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


реклама


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

Время компиляции файла: 2024-08-30 11:47:00
2025-05-20 05:55:03/0.0082428455352783/1