PushListPosition()
Синтаксис
PushListPosition(List())
Описание
Запоминает текущий элемент (если он есть) Связного Списка List(), чтобы впоследствии к нему можно было вернуться с помощью функции PopListPosition(). Позиция сохраняется в структуре стека, поэтому возможны несколько вызовов этой функции.
Параметры
List() Имя используемого Списка, созданного с помощью функции NewList. Вы должны указать скобки после имени Списка.
Возвращаемое значение
Ничего.
Комментарии
Эта функция позволяет запоминать текущий элемент, что даёт возможность выполнить итерацию по Списку с помощью NextElement() или ForEach, а после итерации вернуться к запомненному ранее с помощью команды PopListPosition() текущему элементу. Для этой функции можно выполнить несколько вызовов, если каждый из них позже будет уравновешен соответствующим вызовом PopListPosition().
Примечание. Запрещается удалять запомненный с помощью PushListPosition() элемент, используя команды DeleteElement() или ClearList(). Это может привести к сбою при вызове PopListPosition() потому что память выделенная для элемента больше не действительна.
Пример
NewList Numbers() AddElement(Numbers()): Numbers() = 1 AddElement(Numbers()): Numbers() = 2 AddElement(Numbers()): Numbers() = 5 AddElement(Numbers()): Numbers() = 3 AddElement(Numbers()): Numbers() = 5 AddElement(Numbers()): Numbers() = 2 ; Удаление дублирующих значений с использованием вложенной итерации ; ForEach Numbers() Value = Numbers() PushListPosition(Numbers()) While NextElement(Numbers()) If Numbers() = Value DeleteElement(Numbers()) ; Удаляются только элементы, которые не могли быть запомненными в PushListPosition() EndIf Wend PopListPosition(Numbers()) Next ForEach Numbers() Debug Numbers() Next
См. также
PopListPosition(), SelectElement(), ChangeCurrentElement(), NextElement(), PreviousElement(), ForEach
Поддерживаемые OS
Все