Page 1 of 1

Передача массивов ...

Posted: 2004-11-18 20:28:12
by NetAndrey
Можно ли в функцию передать массив и вытащить массив из функции?

Posted: 2004-11-18 20:42:09
by AGRS
Передать можно, вытащить нельзя.

Posted: 2004-11-18 20:49:21
by NetAndrey
AGRS wrote:Передать можно, вытащить нельзя.

Скажи как передавать, так писать (sub main(A[10]) это к примеру) при создании функции или как-то по другому.

Posted: 2004-11-18 20:58:04
by Edred
AGRS wrote:Передать можно, вытащить нельзя.


И то и другое неверно и верно в тоже время :)

Просто при передаче передается ссылка на оригинальный массив, а не создается его копия. Поэтому и возвращать не надо, все изменения уже внутри оригинального.

DIM mymassive[10]
...
myfunc( mymassive )

Posted: 2004-11-18 21:10:31
by NetAndrey
Edred wrote:
AGRS wrote:Передать можно, вытащить нельзя.

Просто при передаче передается ссылка на оригинальный массив, а не создается его копия. Поэтому и возвращать не надо, все изменения уже внутри оригинального.

DIM mymassive[10]
...
myfunc( mymassive )

Ты имеешь ввиду, что если я таким макаром передаю ссылку в функцию myfunc, то те изменения, которые произойдут с массивом внутри myfunc останутся и в основной процедуре.
Надеюсь ты меня понял :)

Posted: 2004-11-18 21:13:04
by Edred
NetAndrey wrote:
Edred wrote:
AGRS wrote:Передать можно, вытащить нельзя.

Просто при передаче передается ссылка на оригинальный массив, а не создается его копия. Поэтому и возвращать не надо, все изменения уже внутри оригинального.

DIM mymassive[10]
...
myfunc( mymassive )

Ты имеешь ввиду, что если я таким макаром передаю ссылку в функцию myfunc, то те изменения, которые произойдут с массивом внутри myfunc останутся и в основной процедуре.
Надеюсь ты меня понял :)


Да.

Posted: 2004-11-18 21:16:55
by NetAndrey
Попробуем. Всем спасибо.