Все верно. Но есть варианты решения есть, "крестьянский" : модификация в функции/процедуре глобальных переменных программы, "цивилизованный": передача переменных в функцию по ссылке.
Все верно. Но есть варианты решения есть, "крестьянский" : модификация в функции/процедуре глобальных переменных программы, "цивилизованный": передача переменных в функцию по ссылке.
В этой ветке имхо лучше начинать с "крестьянских" )
int start(){int A=1;
func(A);Print(A);// Должно получиться 2:)}void func (int&var){
var++;}
Пример передачи параметра по ссылке, в данном случае передается не переменная, а ссылка на область памяти где она хранится. Получаете полную автономность функции без привязки к глобальным переменным программы (можно спокойно переносить из программы в программу), но "крестьянский" вариант тоже имеет право на жизнь на нашем уровне програмирования:)
Функция возвращает вообще только ОДНО значение,
а описанная как void ни одного, т.е. ничего не возвращает.
.
Как вариант присваивайте эти значения глобальным переменным внутри функции.
Глобальные - это обьявленные вне спец. функций? Переменная flag10 обьявлена в начале советника - вместе с внешними переменными.
if (tiket!= -1) { Order_Modifi_Sell (); taim_open = Taim0; flag10=0; } } return(taim_open,flag10);Получается специально передавать flag10 наружу не надо - и так дойдет?
Все верно. Но есть варианты решения есть, "крестьянский" : модификация в функции/процедуре глобальных переменных программы, "цивилизованный": передача переменных в функцию по ссылке.
А можно на примере? а то я как-то не очень понял.
Все верно. Но есть варианты решения есть, "крестьянский" : модификация в функции/процедуре глобальных переменных программы, "цивилизованный": передача переменных в функцию по ссылке.
В этой ветке имхо лучше начинать с "крестьянских" )
Глобальные - это обьявленные вне спец. функций?
Вне любых функций.
Обычно их объявляют сразу после внешних переменных до функций инит, деинит и старт.
Получается специально передавать flag10 наружу не надо - и так дойдет?
Да. Если она еще раз не переобъявлена в функции, то будет модифицирована глобальная переменная.
Вне любых функций.
Обычно их объявляют сразу после внешних переменных до функций инит, деинит и старт.
Тогда добавочный вопрос. Что за глобальные переменные обьявляються из терминала клавишей F3? И спасибо всем за разьяснения.
Тогда добавочный вопрос. Что за глобальные переменные обьявляються из терминала клавишей F3? И спасибо всем за разьяснения.
У Вас каша в голове)
Всего 3 уровня:
-глобальные переменные терминала, область видимости все программы работающие в терминале (это вызывается по F3)
-глобальные переменные программы (область видимости вся программа, все ее функции)
-локальные переменные (область видимости функция где она объявлена);
Тогда добавочный вопрос. Что за глобальные переменные обьявляються из терминала клавишей F3? И спасибо всем за разьяснения.
Это глобальные переменные терминала.
К ним может обратиться любой эксперт, скрипт, который работает в данном терминале.
Не путать с глобальными переменными скрипта/советника.
У Вас каша в голове)
Всего 3 уровня:
-глобальные переменные терминала, область видимости все программы работающие в терминале (это вызывается по F3)
-глобальные переменные программы (область видимости вся программа, все ее функции)
-локальные переменные (область видимости функция где она объявлена);
Ага, каша! Даже я бы сказал плов :-) . Но все равно надо разбирать все по полкам.