Какая разница между функциями ?

 

Подскажите пожалуйста, какая разница между функциями:

int Start()
void Start()
void OnStart()
void OnTick()
и т.д. какие ещё есть старты?

Это же всё относится к стартам, почему они все разные, в чём особенность?
 

 

Функция start() была раньше до 600-го билда. Потом вместо start() появилось несколько разных (в зависимости от места, где они находятся), в скрипте - OnStart(), в советнике OnTick(), в индикаторе OnCalculate().

А вот int start() и void start() - это немного другой вопрос. Просто так можно и все.

 
Dmitry Fedoseev:

А вот int start() и void start() - это немного другой вопрос. Просто так можно и все.

Яснопонятно)) 
Тогда буду пользоваться "Просто так можно и все" - void start()

 
Natashe4ka:

Яснопонятно)) 
Тогда буду пользоваться "Просто так можно и все" - void start()

Лучше пользуйтесь void OnStart() в скриптах, void OnTick() в советниках и int OnCalculate() в индикаторах.
 
Artyom Trishkin:
Лучше пользуйтесь void OnStart() в скриптах, void OnTick() в советниках и int OnCalculate() в индикаторах.

А зачем, если нет разницы?
Как говорится: на скорость не влияет)) 

 
Natashe4ka:

А зачем, если нет разницы?
Как говорится: на скорость не влияет)) 

Можно много философствовать на эту тему, но тем не менее, пользуйтесь функциями из шаблона создаваемого в редакторе, а там OnStart(), OnTick().
 
Natashe4ka:    Подскажите пожалуйста, какая разница между функциями:
int Start()
void Start()
void OnStart()
void OnTick()
и т.д. какие ещё есть старты?

Это же всё относится к стартам, почему они все разные, в чём особенность?

Start - устаревшая функция. Пока можно ее использовать. Но есть опасение, что очередной билд ее отвергнет. И мы останемся с дохлой программой.

int и void - типы возвращаемого значения. Если есть возможность выбора - выбираем нужное. Если выберем void, то будет отсутствовать возможность проверки результата работы функции, но зато налицо удобство - можно выбросить return в самом конце. Более подробно рассмотрено в теме Замена Start...

 
STARIJ:

Start - устаревшая функция. Пока можно ее использовать. Но есть опасение, что очередной билд ее отвергнет. И мы останемся с дохлой программой.

int и void - типы возвращаемого значения. Если есть возможность выбора - выбираем нужное. Если выберем void, то будет отсутствовать возможность проверки результата работы функции, но зато налицо удобство - можно выбросить return в самом конце. Более подробно рассмотрено в теме Замена Start...

Кто и где будет проверять?
 
STARIJ:

Start - устаревшая функция. Пока можно ее использовать. Но есть опасение, что очередной билд ее отвергнет. И мы останемся с дохлой программой.

это врятли, скорее всего компилятор ее уже сейчас отвергает и делает автозамену на OnTick
 
Dmitry Fedoseev:

Функция start() была раньше до 600-го билда. Потом вместо start() появилось несколько разных (в зависимости от места, где они находятся), в скрипте - OnStart(), в советнике OnTick(), в индикаторе OnCalculate().

А вот int start() и void start() - это немного другой вопрос. Просто так можно и все.

Поправка: например, если использвать int OnInit(), то функция может возвращать INIT_SUCCEEDED (удачно), INIT_FAILED, INIT_PARAMETERS_INCORRECT. Для OnStart() мне, по правде говоря, не интересно, но все-таки есть разница void или int. Функция OnInit() типа void всегда означает удачную инициализацию.

 

Natashe4ka:

Подскажите пожалуйста, какая разница между функциями:

int Start()
void Start()
void OnStart()
void OnTick()
и т.д. какие ещё есть старты?

Это же всё относится к стартам, почему они все разные, в чём особенность?
 

Также  в советнике OnInit() и OnTick() - функции-обработчики разных событий, а то при прочтении темы у меня лично создается впечатление, что выше их или путают, или приравняли.

 
Alexander Belozerov:

Поправка: например, если использвать int OnInit(), то функция может возвращать INIT_SUCCEEDED (удачно), INIT_FAILED, INIT_PARAMETERS_INCORRECT. Для OnStart() мне, по правде говоря, не интересно, но все-таки есть разница void или int. Функция OnInit() типа void всегда означает удачную инициализацию.

 

Также  в советнике OnInit() и OnTick() - функции-обработчики разных событий, а то при прочтении темы у меня лично создается впечатление, что выше их или путают, или приравняли.

Извините, пожалуйста, но где вы увидели здесь разговоры про функцию OnInit().