Как удалить элемент в середине массива? Я попытался это:Удалить элемент из массива
Public Sub RemoveArrayElement(AryVar() As Object, ByVal RemoveWhich As Long)
Dim byteLen As Byte
byteLen = 4
If RemoveWhich < UBound(AryVar) Then
CopyMemory ByVal VarPtr(AryVar(RemoveWhich)), ByVal _
VarPtr(AryVar(RemoveWhich + 1)), (byteLen) * _
(UBound(AryVar) - RemoveWhich)
End If
If UBound(AryVar) = LBound(AryVar) Then
Erase AryVar
Else
ReDim Preserve AryVar(UBound(AryVar) - 1)
End If
End Sub
Но когда я извлечь элемент из aryvar
, он возвращает Nothing
.
с помощью CopyMemory может быть быстрее, хотя ... – Hrqls