↑  ←  Описание функции


_ArrayPush

Добавляет новые элементы в массив, не увеличивая его размер. Вставляет новые значения в конец, одновременно удаляя элементы в начале или наоборот.

#include <Array.au3>
_ArrayPush(ByRef $avArray, $vValue [, $iDirection = 0])

Параметры

$avArray Массив для изменения
$vValue Добавляемое значение(ия) (может быть в виде массива значений)
$iDirection [необязательный] Направление сдвига существующих элементов массива:
    0 = Сдвигая влево (добавляет в конец)
    1 = Сдвигая вправо (добавляет в начало)

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

Успех:Возвращает 1
Ошибка:Возвращает 0, устанавливает @error:
@error:1 - Массив $avArray не является массивом
2 - $vValue является массивом превышающим $avArray (поэтому он не может уместится в нём)
3 - Массив $avArray не является одномерным массивом

Примечания

Эта функция используется для непрерывного обновления данных в массиве, в противном случае создаётся огромный размер массива.
Это хранит все значения внутри массива (подобно Истории), убирая первый или последний элемент, в зависимости от направления сдвига.
Это имитирует команду push в ассемблере.

См. также

_ArrayAdd, _ArrayConcatenate, _ArrayDelete, _ArrayInsert, _ArrayPop

Пример

#include <Array.au3>

Local $avArrayTarget[9] = [1, 2, 3, 4, 5, 6, 7, 8, 9]
Local $avArraySource[2] = [100, 200]

_ArrayDisplay($avArrayTarget, "$avArrayTarget ПЕРЕД _ArrayPush()")
_ArrayPush($avArrayTarget, $avArraySource)
_ArrayDisplay($avArrayTarget, "$avArrayTarget ПОСЛЕ _ArrayPush(), массив в конец")
_ArrayPush($avArrayTarget, $avArraySource, 1)
_ArrayDisplay($avArrayTarget, "$avArrayTarget ПОСЛЕ _ArrayPush() массив в начало")
_ArrayPush($avArrayTarget, "Привет мир!", 1)
_ArrayDisplay($avArrayTarget, "$avArrayTarget ПОСЛЕ _ArrayPush() строка в начало")