|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Создание массива через Assign |
|
|
[решено] Создание массива через Assign
|
Старожил Сообщения: 352 |
Профиль | Отправить PM | Цитировать Приветствую, возможно ли создание массива через Assasin() и получение его через Eval() ? Цель-создать 10 массивов типа MASSIV_1, MASSIV_2 и т.д и обрабатывать их через цикл добавляя к MASSIV_ номер цикла, а не делать 10 одинаковых функций.
|
|
Отправлено: 12:11, 15-03-2019 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 17:00, 15-03-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата -TRM-:
Можно использовать, ну почему бы не использовать двумерный массив? |
|
------- Отправлено: 20:27, 15-03-2019 | #3 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
Я бы, пожалуй, подумал над коллекцией/словарём (Microsoft Scripting Runtime везде есть): Скрытый текст
AutoItSetOption("MustDeclareVars", 1) Local $oDictionary = ObjCreate("Scripting.Dictionary") Local $array, $elem Local $aArrFirst = [0, 1, 2, 3] Local $aArrSecond = [1, 2, 3, 4, 5, 6, 7] Local $aArrThird = [8, 9] $oDictionary.Add(0, $aArrFirst) $oDictionary.Add(1, $aArrSecond) $oDictionary.Add(2, $aArrThird) For $array In $oDictionary.Items ConsoleWrite("---------------" & @CRLF) For $elem In $array ConsoleWrite($elem & @CRLF) Next Next exit(0) Жаль, AutoIt не позволяет зараз создавать и пользовать массивы напрямую, без объявления переменных (a-la WSH'ной функцией Array()). Update: Хотя… Скрытый текст
AutoItSetOption("MustDeclareVars", 1) Local $oDictionary = ObjCreate("Scripting.Dictionary") Local $array, $elem $oDictionary.Add(0, Array(0, 1, 2, 3)) $oDictionary.Add(1, Array(1, 2, 3, 4, 5, 6, 7)) $oDictionary.Add(2, Array(8, 9)) For $array In $oDictionary.Items ConsoleWrite("---------------" & @CRLF) For $elem In $array ConsoleWrite($elem & @CRLF) Next Next exit(0) Func Array($Var0, $Var1 = Null, $Var2 = Null, $Var3 = Null, $Var4 = Null, $Var5 = Null, $Var6 = Null, $Var7 = Null, $Var8 = Null, $Var9 = Null) Local $array[@NumParams] Local $i For $i = 0 To @NumParams - 1 $array[$i] = Eval("Var" & $i) Next Return $array EndFunc |
|
Отправлено: 00:25, 16-03-2019 | #4 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
|
||
Отправлено: 14:09, 16-03-2019 | #5 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать -TRM-, можно пример того как ты это делаешь без Assign?
|
------- Отправлено: 14:52, 16-03-2019 | #6 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата -TRM-:
Global $aArray_1[1][1] = [[1]] Global $aArray_2[1][1] = [[2]] Global $aArray_3[1][1] = [[3]] Global $aArray_4[1][1] = [[4]] Global $aArray_5[1][1] = [[5]] _ArrayGet(2) Func _ArrayGet($iVal) For $i = 1 To 5 $aArray = Eval('aArray_' & $i) ;If $aArray[0][0] = $iVal Then ConsoleWrite($aArray[0][0] & @CRLF) ;EndIf Next EndFunc |
|
------- Отправлено: 15:13, 16-03-2019 | #7 |
Старожил Сообщения: 352
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
|
|
Отправлено: 17:21, 16-03-2019 | #8 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать -TRM-, Вы можете хоть массив из массивов сделать, только достаточно медленно сие будет работать.
Вы саму задачу опишите. Пока Вы рассказываете только про уже выбранное решение. |
Отправлено: 18:15, 16-03-2019 | #9 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Отправлено: 20:34, 16-03-2019 | #10 |
|
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
PowerShell - [решено] создание массива в цикле | Neldoreth_inf | Скриптовые языки администрирования Windows | 2 | 24-02-2017 07:42 | |
PowerShell - [решено] Создание собственного массива объектов powershell 2.0 | dosperados | Скриптовые языки администрирования Windows | 2 | 01-07-2015 11:25 | |
Delphi - Создание массива кнопок | VovanZ | Программирование и базы данных | 3 | 24-12-2009 22:49 | |
Создание raid массива на работающей системе | Orfan | Microsoft Windows NT/2000/2003 | 5 | 28-10-2008 23:10 | |
Создание динамического массива на Pascal-е | Skynet | Программирование и базы данных | 3 | 09-10-2004 18:05 |
|