PureBasic

PopMapPosition()

Синтаксис

PopMapPosition(Map())

Описание


Устанавливает внутренний указатель Хеш-карты Map() на элемент, который был ранее запомнен как 'текущий' с помощью PushMapPosition(), (он опять становится текущим элементом).

Параметры

Map() Имя используемой Хеш-карты, созданной с помощью функции NewMap. Вы должны указать скобки после имени Хеш-карты.

Возвращаемое значение

Ничего.

Комментарии

Состояние Хеш-карты будет таким же, как и при соответствующем вызове PushMapPosition(). Если не было текущего элемента при вызове PushMapPosition() то после вызова PopMapPosition(), его также не будет.

Примечание. Нельзя удалять элемент используя команды DeleteMapElement() или ClearMap(), если он был запомнен как 'текущий' с помощью PushMapPosition() . Это может привести к сбою при вызове PopMapPosition(), поскольку память выделенная для элементов больше недействительна.

Пример

NewMap Numbers()
Numbers("A") = 1
Numbers("B") = 2
Numbers("C") = 5
Numbers("D") = 3
Numbers("E") = 2
Numbers("F") = 5

; Удаление дублирующих значений с использованием вложенной итерации
;
ForEach Numbers()
    Value = Numbers()
    PushMapPosition(Numbers())
    While NextMapElement(Numbers())
        If Numbers() = Value
            DeleteMapElement(Numbers()) ; Удаляются только элементы, которые не могли быть запомненными в PushMapPosition()
        EndIf
    Wend
    PopMapPosition(Numbers())
Next

ForEach Numbers()
    Debug Numbers()
Next

См. также

PushMapPosition(), FindMapElement(), NextMapElement(), ResetMap(), ForEach

Поддерживаемые OS

Все

<- NextMapElement() - Оглавление Map - PushMapPosition()->