Что нового

Возврат массива из функции, передача массива в функцию без объявления

Andeangl

Новичок
Сообщения
62
Репутация
4
Возник вопрос по поводу работы с массивами: есть ли способы передать в функцию (или вернуть из функции) массив, без его объявления?

Примерно так:

Код:
_function([-1, 234, "string"], 5, 5)

Func _function($arr, $x, $y)
...
Return [$x, $y]
EndFunc


? Понимаю, что можно сделать так:

Код:
Dim $temp_arr [3]= [-1, 234, "string"]
_function($temp_arr , 5, 5)

Func _function($arr, $x, $y)
...
Local $temp_arr [2] = [$x, $y]
Return $temp_arr 
EndFunc


Но хочется компактности...
 

sngr

AutoIT Гуру
Сообщения
1,010
Репутация
408
Код:
#include 'array.au3'
Global $aArr[3]
_ArrayDisplay($aArr)
zzz()
_ArrayDisplay($aArr)
Func zzz()
	$aArr[0]=1
	$aArr[1]=2
	$aArr[2]=3
EndFunc
 
Автор
A

Andeangl

Новичок
Сообщения
62
Репутация
4
sngr сказал(а):
Код:
#include 'array.au3'
Global $aArr[3]
_ArrayDisplay($aArr)
zzz()
_ArrayDisplay($aArr)
Func zzz()
	$aArr[0]=1
	$aArr[1]=2
	$aArr[2]=3
EndFunc

Нет, это не то - искал что-то вроде _ArrayCreate(), которого вывели из обращения.
 
Верх