В настоящее время я застрял в проблеме, связанной с объявлением массива типа short в структуре и установкой по умолчанию «ничто» вместо «0» после ReDim.
'Declaring array and setting it's initial size
Private Structure Totals_T
Dim sTot_Desc As String
<VBFixedArray(10)> Dim iTot_Cnt() As Short
Public Sub Initialize()
ReDim iTot_Cnt(10)
End Sub
End Structure
Private m_Totals() As Totals_T 'Define the array
'Calling the structure for the two variables declared in the structure
If iNewCnt = 1 Then
ReDim m_Totals(10)
**m_Totals(0).**iTot_Cnt(iColumn_No) = m_Totals(0).iTot_Cnt(iColumn_No) + 1
При вызове m_Totals (0) возвращенные массивы имеют 10 записей в массиве с sTot_Desc и iTot_Cnt, у которых во всех записях ничего не задано.
Когда я ReDim m_Totals, обе переменные, которые я объявил в структуре (sTot_Desc и iTot_Cnt), объявляются как ничего, это хорошо для String, но мне нужно, чтобы Short, который я объявил, был объявлен как '0', как я и думал, когда вы выполняете ReDim.Может кто-нибудь увидеть, что здесь происходит и почему он объявляет мои переменные как «ничто», а не по умолчанию «0» для короткого и «» / ничто для строки?
Любая помощь будет здорово!