PureBasic

InsertElement()

Синтаксис

*Result = InsertElement(List())

Описание


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

Параметры

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

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

Возвращает адрес в памяти нового текущего элемента Списка, если он был успешно создан, в противном случае 0. Возвращаемое значение является указателем на новый текущий элемент.

Пример

; Самый простой способ использования InsertElement
NewList simple.w()
InsertElement(simple()) ; Создает первый новый элемент в Списке
simple() = 23

InsertElement(simple()) ; Текущая позиция - это первый элемент, поэтому мы добавляем этот элемент в начало Списка
simple() = 45              ; Старый первый элемент теперь является вторым элементом в Списке

; Это показывает, как использовать возвращаемое значение InsertElement
NewList advanced.l()
If InsertElement(advanced()) <> 0
    advanced() = 12345
Else
    MessageRequester("Ошибка!", "Невозможно выделить память для нового элемента", #PB_MessageRequester_Ok)
EndIf

; Небольшая структура, демонстрирующая использование указателя на новый элемент
Structure Programmer
    Name.s
    Strength.b
EndStructure

NewList Programmers.Programmer() ; Список для хранения элементов

*Element.Programmer = InsertElement(Programmers())
If *Element<>0
    *Element\Name = "Dave"
    *Element\Strength = 3  ; Сильный!
Else
    MessageRequester("Ошибка!", "Невозможно выделить память для нового элемента", #PB_MessageRequester_Ok)
EndIf

См. также

AddElement(), DeleteElement(), ClearList()

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

Все

<- FreeList() - Оглавление List - LastElement()->