VB删除动态数组中的最后一个元素

Yso*_*oL8 2 vb.net arrays

当我不知道数组有多大时,我需要一种方法来删除数组中的最后一个元素.

基本上我需要php版本的php array_pop,但似乎没有相关内容出现在搜索结果中.

hex*_*mal 11

使用

Redim Preserve MyArray (UBound(MyArray) - 1)
Run Code Online (Sandbox Code Playgroud)

  • 我是。尝试:`Dim arr() As Long : ReDim arr(1 To 10) : ReDim Preserve arr(UBound(arr) - 1)`。运行时错误 9:下标超出范围。当然,如果下限为“0”,它会正常工作。但在 VB6 中,通常不是。这是一件很棒的事情。 (2认同)

GSe*_*erg 6

VB6:

redim preserve arr(lbound(arr) to ubound(arr) - 1)
Run Code Online (Sandbox Code Playgroud)

VB.NET:

redim preserve arr(arr.GetUpperBound(0) - 1)
Run Code Online (Sandbox Code Playgroud)