Цитата -TRM-:
Assign прочитал не поддерживает такое »
|
Зато поддерживает присвоение переменной массива другого массива:
Вот так вроде получилось то что тебе нужно:
Код:
Global Const $sArray_Prefix = 'aArray_'
Global $aArray_1[1][2] = [[1, 'Item1']]
Global $aArray_2[1][2] = [[2, 'Item2']]
Global $aArray_3[1][2] = [[3, 'Item3']]
Global $aArray_4[1][2] = [[4, 'Item4']]
Global $aArray_5[1][2] = [[5, 'Item5']]
_ArraySet(2, 0, 1, 'New Item 2')
$sRet = _ArrayGet(2, 0, 1)
MsgBox(64, @ScriptName, '_ArrayGet(2, 0, 1) VS $aArray_2[0][1]' & @CRLF & $sRet & ' --> ' & $aArray_2[0][1])
Func _ArraySet($iArr, $iRow, $iCol, $sValue)
Local $aArray = Eval($sArray_Prefix & $iArr)
If UBound($aArray, 0) < 2 Or $iRow > UBound($aArray, 1) - 1 Or $iCol > UBound($aArray, 2) - 1 Then
Return SetError(1, 0, 0)
EndIf
$aArray[$iRow][$iCol] = $sValue
Assign($sArray_Prefix & $iArr, $aArray)
EndFunc
Func _ArrayGet($iArr, $iRow, $iCol = 0)
Local $aArray = Eval($sArray_Prefix & $iArr)
If UBound($aArray, 0) < 2 Or $iRow > UBound($aArray, 1) - 1 Or $iCol > UBound($aArray, 2) - 1 Then
Return SetError(1, 0, 0)
EndIf
Return $aArray[$iRow][$iCol]
EndFunc