VB.NET 尝试在子例程中设置一维数组时出现 NullReferenceException
VB.NET NullReferenceException while trying to set 1D array in Subroutine
Public Property inputChordsUser As String()
...稍后在代码中
Dim Final As String = inputtedChord & LegitFinalExtensions
CounterPublic += 1
SendChords(Final, CounterPublic)
End If
End Sub
Public Sub SendChords(ByRef Final As String, ByRef CounterPublic As Integer)
inputChordsUser(CounterPublic) = Final
End Sub
End Class
我收到了一个 NullReferenceException
扔在 SendChords
潜艇上的东西。据我所见,inputChordsUser
设置为 Nothing。呃。我不是要使用它,而是要设置它。
为什么是这样?我试过提供 inputChordsUser
作为调用的参数,但没有。
有什么好的修复方法吗?
您还没有确定数组的尺寸 inputChordsUser
。您不是要 'set' 数组,而是要将数组的元素设置在 CounterPublic
位置。由于该位置没有元素,因此抛出 NullReferenceException
。
documentation on VB Arrays 可能可以回答所有剩余的问题。
Public Property inputChordsUser As String()
...稍后在代码中
Dim Final As String = inputtedChord & LegitFinalExtensions
CounterPublic += 1
SendChords(Final, CounterPublic)
End If
End Sub
Public Sub SendChords(ByRef Final As String, ByRef CounterPublic As Integer)
inputChordsUser(CounterPublic) = Final
End Sub
End Class
我收到了一个 NullReferenceException
扔在 SendChords
潜艇上的东西。据我所见,inputChordsUser
设置为 Nothing。呃。我不是要使用它,而是要设置它。
为什么是这样?我试过提供 inputChordsUser
作为调用的参数,但没有。
有什么好的修复方法吗?
您还没有确定数组的尺寸 inputChordsUser
。您不是要 'set' 数组,而是要将数组的元素设置在 CounterPublic
位置。由于该位置没有元素,因此抛出 NullReferenceException
。
documentation on VB Arrays 可能可以回答所有剩余的问题。