Сборка: Collections;
IEnumerable - абстрактный интерфейс коллекций, поддерживающих перебор элементов.
IEnumerable
Интерфейс не содержит собственных свойств и методов. Внутренняя реализация интерфейса позволяет работать с коллекциями с помощью оператора For Each.
Примечание. Наследование от IEnumerable не является обязательным условием для поддержки For Each. Для ряда коллекций, имеющихся в Fore, реализована собственная поддержка оператора For Each.
Ниже приведен пример использования интерфейса IEnumerable для создания универсальной процедуры для просмотра любых коллекций, являющихся наследником IEnumerable.
Sub UserProc;
Sub ShowCollection(Collection: IEnumerable);
Var
v: Variant;
Begin
For Each v In Collection Do
Debug.WriteLine(v);
End For;
End Sub ShowCollection;
Var
ArrList: IArrayList;
StrList: IStringList;
Begin
//Создание и заполнение динамического массива любых значений
ArrList := New ArrayList.Create;
ArrList.Add("A");
ArrList.Add(Integer.MaxValue);
ArrList.Add(DateTime.MaxValue);
//Создание и заполнение динамического массива строк
StrList := New StringList.Create;
StrList.Add("Один");
StrList.Add("Два");
StrList.Add("Три");
//Просмотр коллекций
ShowCollection(ArrList);
ShowCollection(StrList);
End Sub UserProc;
См. также: