C3D Toolkit  Kernel - 107448, Vision - 190805.107448

Одномерный массив указателей с итераторными функциями. Подробнее...

#include <templ_p_array.h>

+ Граф наследования:PMIArray< Type >:
+ Граф связей класса PMIArray< Type >:

Открытые члены

 PMIArray ()
 Конструктор.
 
 PMIArray (size_t i_upper, uint16 i_delta=1, uint8 shouldDelete=1)
 Конструктор.
 
- Открытые члены унаследованные от PArray< Type >
 PArray ()
 Конструктор.
 
 PArray (size_t i_upper, uint16 i_delta=1, bool shouldDelete=true)
 Конструктор.
 
virtual ~PArray ()
 Деструктор.
 
bool OwnsElem () const
 Владеем ли элементами?
 
void OwnsElem (bool ownsEl)
 Выставить состояние флага владения элементами.
 
bool SetSize (size_t newSize, bool clear)
 Функции, выделяющие потенциально большие участки памяти, возвращают результат операции (успех/ошибка). Подробнее...
 
void Flush (DelType=defDelete)
 Удалить все элементы.
 
void HardFlush (DelType shdl=defDelete)
 Освободить всю память.
 
void RemoveAll (DelType shdl=defDelete)
 Удалить все элементы обнулить количество элементов.
 
Type * RemoveObj (Type *delObject, DelType=defDelete)
 Удалить элемент из массива.
 
virtual Type * RemoveInd (size_t delIndex, DelType del=defDelete)
 Удалить элемент из массива.
 
virtual void clear ()
 Обнулить количество элементов.
 
- Открытые члены унаследованные от RPArray< Type >
 RPArray ()
 Конструктор.
 
 RPArray (size_t i_upper, uint16 i_delta=1)
 Конструктор.
 
virtual ~RPArray ()
 Деструктор.
 
uint16 Delta () const
 Получить приращение по количеству элементов при выделении дополнительной памяти.
 
size_t Upper () const
 Количество элементов, для которых выделена память?
 
void Delta (uint16 newDelta)
 Установить приращение по количеству элементов при выделении дополнительной памяти (1 - автоприращение).
 
void SetMaxDelta (uint16 newDelta)
 Установить максимальное из приращений.
 
bool SetSize (size_t newSize)
 Функции, выделяющие потенциально большие участки памяти, возвращают результат операции (успех/ошибка). Подробнее...
 
bool Reserve (size_t n, bool addAdditionalSpace=true)
 Зарезервировать место под столько элементов.
 
bool Add (Type *)
 Добавить элемент в конец массива.
 
bool AddAt (Type *e, size_t index)
 Вставить элемент в указанную позицию.
 
bool AddAfter (Type *e, size_t index)
 Добавить элемент после указанного.
 
bool Insert (size_t index, Type *)
 Вставить элемент перед указанным.
 
bool AddArray (const RPArray< Type > &)
 Добавить массив.
 
bool AddCArray (const Type **, size_t count)
 Добавить C-массив.
 
bool InsertArray (const RPArray< Type > &, size_t index)
 Добавить массив в позицию.
 
void DetachAll ()
 Удалить все элементы обнулить количество элементов.
 
void Adjust ()
 Удалить лишнюю память.
 
Type * DetachInd (size_t delIndex)
 Отсоединить элемент от массива.
 
bool DetachObj (const Type *delObject)
 Отсоединить элемент от массива.
 
void Swap (RPArray &arr)
 Обменять местами данные массивов.
 
size_t FindIt (const Type *) const
 Найти элемент по указателю.
 
bool IsExist (const Type *) const
 Есть ли элемент в массиве.
 
size_t Count () const
 Получить количество элементов массива.
 
ptrdiff_t MaxIndex () const
 Получить индекс последнего объект в массиве.
 
void Sort (CompFunc comp)
 Сортировать массив.
 
Type *& operator[] (size_t loc) const
 Оператор доступа по индексу.
 
Type * GetLast () const
 Получить адрес последнего элемента в массиве.
 
size_t size () const
 Дать количество элементов массива.
 
bool reserve (size_t n)
 Зарезервировать место под столько элементов.
 
size_t capacity () const
 Под какое количество элементов выделена память?
 
void push_back (const Type *e)
 Добавить элемент в конец массива.
 
template<class Iterator >
void insert (Iterator pos, const Type *e)
 Вставить элемент перед указанным.
 
template<class Iterator >
void erase (Iterator pos)
 Удалить элемент из массива по индексу.
 
template<class Iterator >
void erase (Iterator first, Iterator last)
 Удалить элементы из массива начиная с индекса first до last-1 включительно.
 
void shrink_to_fit ()
 Удалить лишнюю память.
 
const TPtrbegin () const
 Получить указатель на первый элемент массива.
 
TPtrbegin ()
 Получить указатель на первый элемент массива.
 
const TPtrend () const
 Получить указатель на участок памяти после массива.
 
TPtrend ()
 Получить указатель на участок памяти после массива.
 
const TPtrcbegin () const
 Получить указатель на первый элемент массива.
 
const TPtrcend () const
 Получить указатель на участок памяти после массива.
 

Дополнительные унаследованные члены

- Открытые типы унаследованные от RPArray< Type >
typedef Type * TPtr
 Имя указателя на объект.
 
typedef int(* CompFunc) (const Type **, const Type **)
 Шаблон функции сортировки.
 
- Защищенные члены унаследованные от RPArray< Type >
const Type ** GetAddr () const
 Получить указатель на первый элемент массива.
 
const TPtr_Begin () const
 Получить указатель на первый элемент массива.
 
TPtr_Begin ()
 Получить указатель на первый элемент массива.
 
const TPtr_End () const
 Получить указатель на участок памяти после массива.
 
bool CatchMemory ()
 Захватить память.
 
bool AddMemory (size_t n)
 Обеспечить место в памяти под n элементов, независимо от AutoDelta.
 
size_t AutoDelta () const
 Вычислить автоприращение.
 
- Защищенные данные унаследованные от PArray< Type >
bool owns
 Флаг владения элементами массива (элементы можно удалять)
 
Type * nowDeletedElem
 Удаляемый элемент
 
- Защищенные данные унаследованные от RPArray< Type >
size_t count
 Количество элементов в массиве.
 
size_t upper
 Под какое количество элементов выделена память.
 
uint16 delta
 Приращение по количеству элементов при выделении дополнительной памяти.
 

Подробное описание

template<class Type>
class PMIArray< Type >

Одномерный массив указателей с итераторными функциями.

Одномерный массив указателей с итераторными функциями - членами классов.


Объявления и описания членов класса находятся в файле: