Подробно о классе RangeArray |
Как и у всех встроенных в библиотеку STL последовательных контейнеров, описание класса RangeArray начинается со спецификации шаблона: template<class Т, class Allocator = allocator<T> > т — тип данных, хранящихся в контейнере, a Allocator — стандартный, Установленный по умолчанию распределитель памяти. Члены класса с уровнем доступа private Описание массива класса RangeArray начинается со следующих объявлений со спецификацией private: T *arraypcr; // указатель на базовый массив контейнера unsigned len; // хранит длину контейнера int upperbound; // нижняя граница int lowerbound; // верхняя граница Allocator а; // распределитель памяти Указатель arrayptr хранит ссылку на участок памяти, который будет содержать массив элементов типа т. В этом фрагменте памяти разместятся элементы, входящие в состав объекта типа RangeArray. Описанный массив индексируется как обычно, с отсчетом от нуля. Индексы объекта RangeArray будут преобразовываться в индексы массива с отсчетом от нуля, на который ссылается указатель arrayptr. Текущая длина объекта RangeArray хранится в поле len. Верхняя и нижняя границы — в полях upperbound и lowerbound соответственно. При описании класса RangeArray ноль считается положительной величиной. Распределитель памяти для контейнера запоминается в поле а.
|