Турбо Паскаль 6.0


TCollection Objects - часть 3


DeleteAll procedure DeleteAll; Удаляет все элементы из коллекции, устанавливая Count в 0. См. так же: TCollection.Delete, TCollection.AtDelete

Error procedure Error(Code, Info: Integer); virtual; Перекрывается: Иногда Вызывается, когда встречается ошибка коллекции. По умолчанию этот метод генерирует ошибку времени выполнения 212. См. так же: константы коллекции coXXXX

FirstThat function FirstThat(Test: Pointer) : Pointer; FirstThat применяет булевскую функцию, заданную указателем на функцию Test к каждому элементу коллекции до тех пор, пока test возвращает True. Результат - указатель на элемент, для которого Test возвращает True, или nil, если функция Test возвращает False для всех элементов. Test должна указывать на дальнюю локальную функцию, использующую только один параметр типа Pointer и возвращающую значение типа Boolean. Например

function Matches(Item: Pointer) : Boolean; far;

Функция Test не может быть глобальной функцией. Предполагая, что List типа TCollection, оператор

P := List.FirstThat(@Matches);

соответствует

I := 0; while (I < List.Count) and not Matches(List.At(I)) do Inc(I); if I < List.Count then P := List.At(I) else P := nil;

См. так же: TCollection.LastThat, TCollection.ForEach

ForEarch procedure ForEarch(Action: Pointer); ForEach применяет действие, определенное процедурой, на которую указывает Action, для каждого элемента коллекции. Action должен указывать на локальную дальнюю процедуру, использующую один параметр типа Pointer. Например

function PrintItem(Item: Pointer);

Процедура Action не может быть глобальной процедурой. Если List типа TCollection, оператор

List.ForEach(@PrintItem);

соответствует

for I := 0 to List.Count - 1 do PrintItem(List.At(I));

См. так же: TCollection.FirstThat, TCollection.LastThat

Free procedure Free(Item: Pointer); Удаляет и освобождает Item. Эквивалентно

FreeItem(Item); Delete(Item);

См. так же: TCollection.FreeItem, TCollection.Delete

FreeAll procedure FreeAll; Удаляет и освобождает все элементы коллекции.




Начало  Назад  Вперед



Книжный магазин