Объясните о return -
Nikid - 27.01.2013
Здравствуйте! Расскажите о return, что она возвращает и как и когда нет. А то я во многих случаях не знаю что поставить. Вот хотелось бы узнать о ней больше. Как определить, что оно что-то возвращает или нет?
Re: Объясните о return -
OKStyle - 27.01.2013
Чить wiki.
Re: Объясните о return -
Nikid - 27.01.2013
Дай ссылку, где там именно об этом написано, а то поиск там много лишнего находит.
Re: Объясните о return -
DrSlett - 27.01.2013
Пример, когда не возвращает:
PHP код:
stock Primer(playerid) SendClientMessage(playerid, -1, "Пример");
используем где-то:
PHP код:
Primer(playerid);
Пример, когда возвращает:
PHP код:
stock Primer(playerid) return GetPlayerMoney(playerid);
используем где-то:
PHP код:
format(string, 10, "%d", Primer(playerid));
Re: Объясните о return -
Nikid - 27.01.2013
PHP код:
SetTimerEx("Start", 2000, false, "i", playerid);
forward Start(playerid);
public Start(playerid)
{
GivePlayerWeapon(playerid, 22, 9999);
SetPlayerVirtualWorld(playerid, 0);
Go[playerid] = true;
SetPlayerArmedWeapon (playerid,0);
if(Freeze == true)
{
TogglePlayerControllable(playerid, false);
}
for(new x = 0; x < MAX_PLAYERS; x++)
{
if(GetPlayerState(x) == PLAYER_STATE_SPECTATING && gSpectateID[x] == playerid)
{
SetTimerEx("publicOwe", 400, false, "ii",x,playerid);
}
}
return ?;
}
Вот тут получается мы ничего не возвращаем так?
P.s: Толком не понял объяснение выше. Ты бы еще описал бы подробно.
Re: Объясните о return -
DrSlett - 27.01.2013
Ничего не надо выводить, можно вообще убрать.
Re: Объясните о return -
NameNone - 27.01.2013
Возвращает указанное значение и останавливает выполнение определенной ветви кода.
PHP код:
new value = random(1);
return value;
Удобно использовать в функциях, с помощью которых необходимо получать определенные значения и использовать их в нужном месте.
Re: Объясните о return -
Stepashka - 27.01.2013
return сама по себе никогда ничего не может возвращать. Возвращать результат могут функции или колбеки.
return сообщает только о том что в данном месте нужно прервать дальнейшую обработку кода и вернуть результат который написан через пробел. Результатом будет то что ты туда написал
return 1/return 0, истина или лож соответственно, или результат выполнения функции, обработанная строка или массив, не рекомендуется в pawn.
И да, если хотите знать больше, вам стоит пойти прочитать основы программирования.
Re: Объясните о return -
Maikkk - 27.01.2013
Quote:
Originally Posted by Stepashka
return сама по себе никогда ничего не может возвращать. Возвращать результат могут функции или колбеки. return сообщает только о том что в данном месте нужно прервать дальнейшую обработку кода и вернуть результат который написан через пробел. Результатом будет то что ты туда написал return 1/return 0, истина или лож соответственно, или результат выполнения функции, обработанная строка или массив, не рекомендуется в pawn.
И да, если хотите знать больше, вам стоит пойти прочитать основы программирования.
|
То есть не рекомендуется делать так?:
pawn Код:
stock Test(number)
{
new text[10];
switch(number)
{
case 1:text="Text 1...";
case 2:text="Text 2...";
case 3:text="Text 3...";
}
return text;
}
Re: Объясните о return -
Alexander_Petrov - 27.01.2013
Quote:
Originally Posted by Maikkk
То есть не рекомендуется делать так?:
pawn Код:
stock Test(number) { new text[10]; switch(number) { case 1:text="Text 1..."; case 2:text="Text 2..."; case 3:text="Text 3..."; } return text; }
|
Только если точно знаешь, что стэк не будет переполнен.