Вопрос по return

< RANGER >

Пользователь
Регистрация
17 Апр 2019
Сообщения
13
Симпатии
4
Варианты 1 и 2 будут работать одинаково ?

Вариан 1
C++:
public test(id)
{
   client_print_color(id, print_team_default,"");
   return PLUGIN_HANDLED;
}
Вариан 2
C++:
public test(id)
   return client_print_color(id, print_team_default,"");
 

Mistrick

Разработчик
Регистрация
8 Июн 2017
Сообщения
47
Симпатии
26
Пол
Мужской
Строчки экономите? Тогда зачем целую новую функцию создаете, вместо прямого вызова client_print_color?
Функция должна возвращать осознанное значение.
 

georgeml

Скриптер
Постоялец
Регистрация
12 Сен 2017
Сообщения
595
Симпатии
314
< RANGER >, Нет. 1-й вариант вернет 1, второй- 0
 

< RANGER >

Пользователь
Регистрация
17 Апр 2019
Сообщения
13
Симпатии
4
Строчки экономите? Тогда зачем целую новую функцию создаете, вместо прямого вызова client_print_color?
Функция должна возвращать осознанное значение.
Как я понял два варианта правильны, но в первом я просто получил значение и завершил а во втором я могу изобретать что угодно ещё только потом завершится ?
C++:
public thetime(id)
{
    new time[64]; get_time("%d.%m.%Y / %H:%M:%S", time, charsmax(time));
    return client_print_color(id, print_team_default, ^1[^4Сервер^1] ^4Текущее время ^3%s, time);
}

public thetime(id)
{
    new time[64]; get_time("%d.%m.%Y / %H:%M:%S", time, charsmax(time));
    client_print_color(id, print_team_default, ^1[^4Сервер^1] ^4Текущее время ^3%s, time);

    return PLUGIN_HANDLED;
}
 

Mistrick

Разработчик
Регистрация
8 Июн 2017
Сообщения
47
Симпатии
26
Пол
Мужской
< RANGER >, В примере с thetime()
1-й вариант - вы вернули значение функции client_print_color() - понятия не имею какие значения она возвращает, это точно дает нужный результат? Если вы юзаете функцию для хендлеров команд или прочего связанного с ядром амхх, для которого важно возвращаемое значение, зачем делать эту неопределенность?
В примере с хенделером чат кмд - если функция вернула 0, то у вас в чате будет видно команду на которую повесили хенделер.
Если функция вернула 1, то не будет вывода чат команды.

2-й вариант - однозначно определено возвращаемое значение.

Лучше почитайте для чего ввели константы возвращаемых значений, которые есть для ядра амхх/engine, fm, ham.
 
Сверху Снизу