PureBasic

MoveElement()

Синтаксис

MoveElement(List() , Location [, *RelativeElement])

Описание


Перемещает текущий элемент Связного Списка List() в другую позицию в этом же Списке. Перемещенный элемент остается текущим элементом Списка. Это быстрая операция, потому что при этом сами данные элемента не перемещаются.

Параметры

List() Имя Списка, созданного с помощью функции NewList, текущий элемент которого будет передвинут. Вы должны указать скобки после имени Списка.
Location Параметр определяющий место, куда следует переместить текущий элемент. Этот параметр может быть одним из следующих значений:
  #PB_List_First : Переместить элемент в начало Списка.
  #PB_List_Last  : Переместить элемент в конец Списка.
  #PB_List_Before: Переместить элемент перед *RelativeElement
  #PB_List_After : Переместите элемент после *RelativeElement
*RelativeElement (дополн.) Элемент, относительно которого текущий элемент должен быть помещен. Этот параметр требуется, если параметр 'Location' = #PB_List_Before или #PB_List_After. В качестве параметра должен быть указатель на элемент, который существует в этом Списке. Вы должны получить этот адрес, используя оператор '@' с именем Списка, а не каким либо другим способом.

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

Ничего.

Пример

NewList Numbers()

For k=0 To 10
    AddElement(Numbers())
    Numbers() = k
Next

SelectElement(Numbers(), 5) ; Делает элемент 5 текущим
*Relative = @Numbers() ; Получить адрес элемента 5

SelectElement(Numbers(), 0) ; Делает элемент  0 текущим
MoveElement(Numbers(), #PB_List_After, *Relative) ; Переместить текущий элемент в позицию 'после элемента 5'

SelectElement(Numbers(), 10) ; Делает элемент 10 текущим
MoveElement(Numbers(), #PB_List_First) ; Переместить текущий элемент в позицию 'в начало Списка'

ForEach Numbers()
    Debug Numbers() ; Результат
Next

См. также

SwapElements()

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

Все

<- MergeLists() - Оглавление List - NextElement()->