Page 1 of 1

Return :-[

Posted: 2006-04-16 10:35:46
by Ivan Pomidorov
Не могу найти инфу по этому оператору и синтаксис , подскажите где копать

Posted: 2006-04-16 10:50:20
by Edred
Читай фак, viewtopic.php?t=805

Posted: 2006-04-16 11:05:13
by Ivan Pomidorov
Edred wrote:Читай фак, viewtopic.php?t=805

Читаю как мантру , но до полного просветления еще далеко ж) , я так понял используется только при подставке в функцию элемента из массива ? А например return false ?

Posted: 2006-04-16 17:27:10
by Destruction
return прекращает функцию и передаёт вызвавшей функции значение.

Пример:

Code: Select all

...
if IsFrined() == true then
...

Sub IsFriend()
   return true
endsub


return не может возвращать массивы.

Ясно объяснил? -)

Posted: 2006-04-16 17:32:25
by Ivan Pomidorov
Destruction wrote:return прекращает функцию и передаёт вызвавшей функции значение.

Пример:

Code: Select all

...
if IsFrined() == true then
...

Sub IsFriend()
   return true
endsub


return не может возвращать массивы.

Ясно объяснил? -)

Спасибо , теперь понятно )

Posted: 2006-04-16 18:14:57
by Destruction
Добавлю, что такое условие:

Code: Select all

if IsFrind() then 

Будет отрабатываться точно так же - оператор if проверяет, на правдивость условие (т.е. если в условии в сумме получается не 0 или false), а функция возвращает нам true.

Posted: 2006-04-16 23:22:20
by Edred
Массив невозможно вернуть, но его можно создать в головной процедуре, передать параметром в функцию. Функция же будет работать в результате с оригиналом массива, а не с его копией. Так устроен скриптовый модуль.

Posted: 2006-04-17 01:11:28
by admir

Code: Select all

sub f1()
dim x[2]
  x[0]=0
  x[1]=1
uo.print(str(x[0])+str(x[1]))
f2(x)
uo.print(str(x[0])+str(x[1]))
end sub
sub f2(x)
x[0]=10
x[1]=55
end sub


передаем x ниче не возвращаем )
в отличии от переенной )