Collections: DynArray
Материал из Вики ИТ мехмата ЮФУ
Версия от 19:54, 30 апреля 2009; Juliet (обсуждение | вклад)
Интерфейс
type DynArray<DataType> = class
/// Количество элементов (размер) массива
property Count: integer;
/// Емкость массива (отведенная память)
property Capacity: integer;
/// Позволяет обращаться к элементам массива по индексу
/// (например, apples[5])
property Elem[index: integer]: DataType;
/// Создает массив размера pSize
constructor Create(pSize: integer := 0);
/// Выделяет новую память. Емкость увеличивается до newCap.
/// (Если newCap меньше текущей емкости, ничего не происходит)
procedure Reserve(newCap: integer);
/// Устанавливает новый размер массива равным newSize
procedure Resize(newSize: integer);
/// Добавляет элемент x в конец массива
procedure Add(x: DataType);
/// Вставляет элемент x в позицию pos
procedure Insert(pos: integer; x: DataType);
/// Удаляет элемент массива из позиции pos
procedure Remove(pos: integer);
/// Возвращает индекс первого элемента массива равного x
/// или -1, если такого элемента нет
function Find(x: DataType): integer;
/// Выводит содержимое массива на консоль
procedure Println();
/// Выводит содержимое массива на консоль в обратном порядке
procedure PrintlnReverse();
end;
Реализация
interface
uses Nodes; // для использования типа SingleNode<DataType> —
// узла с одним полем связи
implementation