Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 880

 
Shurkin:
Старый терминал удалил через панель управления - удаление программ, файлы параметров конфигурации перед этим скопировал в архив.
Где был установлен старый терминал? Где установлен новый терминал. В каком каталоге? В новом терминале Файл --> Открыть каталог данных. Откроется проводник. Вот туда, в соответствующие папки, и положите то, что ранее сохранили. Хотя, быть может, что сохранили не из каталога данных терминала, а из локального его расположения (зависит от того, где и в каком режиме был установлен терминал)
 
evillive:

Вдогонку, раз остальные только стебутся и тыкать носом не собираются...

Раз уж переменные объявлены ВНУТРИ функции, то это нифига не ГЛОБАЛЬНЫЕ переменные, так, на будущее, вдруг реально надо будет рабочий код писать. Глобальные объявляют вне всяких функций, например, в начале кода.

Это я про это:

В таком виде функция ничего не даёт, работает вхолостую, а результаты исчезают сразу по окончанию работы функции (собственно, на это и намекали выше Артём и Виктор).


Но убрав эту функцию, получаю предупреждение, что в глобальных переменных  не допускаются выражения. А я только поэтому и захотел весь код разбить на несколько включаемых файлов: в одном объявляются и вычисляются все используемые в коде переменные, в другом задаются условия для открытия ордеров, и в остальных задаются отдельно условия закрытия для бай и для селл. Может, это глупо, но я подумал, что так легче находить и исправлять ошибки.

И пусть это в действительности не глобальные переменные, но будут ли они, заданные в таком виде, передавать свои значения в оператор if-else, на котором собственно и построен весь мой код? И если по окончании работы функции результаты исчезают, а без функции компилятор выдает ошибку, так что, выделить глобальные переменные в отдельный файл нельзя?

А насчет стёба - пусть ребятки повеселятся: надоедает ведь постоянно глупости новичков читать, верно? 

 
Господа программисты, сейчас что, всему так учат, что примеры в учебнике компилируются с сообщением об ошибке? Нафиг тогда такой пример? Как я смогу написать код правильно, если примеры, на которые я ориентируюсь, НЕ правильны?
 
rapid_minus:
Господа программисты, сейчас что, всему так учат, что примеры в учебнике компилируются с сообщением об ошибке? Нафиг тогда такой пример? Как я смогу написать код правильно, если примеры, на которые я ориентируюсь, НЕ правильны?
Есть ещё примеры в кодобазе, те вроде компилятся без ошибок.
 
rapid_minus:


Но убрав эту функцию, получаю предупреждение, что в глобальных переменных  не допускаются выражения. А я только поэтому и захотел весь код разбить на несколько включаемых файлов: в одном объявляются и вычисляются все используемые в коде переменные, в другом задаются условия для открытия ордеров, и в остальных задаются отдельно условия закрытия для бай и для селл. Может, это глупо, но я подумал, что так легче находить и исправлять ошибки.

И пусть это в действительности не глобальные переменные, но будут ли они, заданные в таком виде, передавать свои значения в оператор if-else, на котором собственно и построен весь мой код? И если по окончании работы функции результаты исчезают, а без функции компилятор выдает ошибку, так что, выделить глобальные переменные в отдельный файл нельзя?

А насчет стёба - пусть ребятки повеселятся: надоедает ведь постоянно глупости новичков читать, верно? 

Никто не говорил, что функцию надо убрать, надо из неё объявление переменных вынести за пределы функции, в начало кода. Или вообще их объявлять в главном файле.
 
evillive:
Никто не говорил, что функцию надо убрать, надо из неё объявление переменных вынести за пределы функции, в начало кода. Или вообще их объявлять в главном файле.

Выше Вы сказали, что по окончании работы функции результаты исчезают. Но убрать присвоение значений переменным из тела функции я не могу - компилятор ругается ошибками. Получается, что в функции я присвоил значения переменным, а при включении файла с ними, эти значения не читаются и компилятор опять будет ругаться? Т.е. нельзя записать код включаемого файла только из одних глобальных переменных?
 
rapid_minus:

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

Я вот что хотел сказать:

//|Включаемый файл "Глобальные переменные"                           |
//+------------------------------------------------------------------+
//-----Объявляем Глобальные переменные:------------------------------------------

double High_0, High_1, High_2;             // Значение верхней линии Bollinger на 0, 1 и 2 барах
   double Low_0, Low_1, Low_2;                // Значение нижней линии Bollinger на 0, 1 и 2 барах
   double Delta_0, Delta_1;                   // Разница межу значениями верхней и нижней ...
                                              // ...линий Bollinger на 0 и 1 барах

void Variables()
{

High_0=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_UPPER,0);
     High_1=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_UPPER,1);
     High_2=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_UPPER,2);
     Low_0=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_LOWER,0);
     Low_1=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_LOWER,1);
     Low_2=iBands(NULL,0,10,2,0,PRICE_CLOSE,MODE_LOWER,2);
     Delta_0=(High_0-Low_0);
     Delta_1=(High_1-Low_1);
}
//------------------------------------------------------------------------------------------
 
evillive:

Я вот что хотел сказать:

:) 

"... SOS! Вот фрагмент включаемого файла глобальных переменных. Остальная часть абсолютно в том же духе.

И что я только ни делал: менял параметры, убирал переменные из файла по отдельности и группами, что бы найти, где ошибка - все едино:

пишет предупреждение "not all control paths return a value". Но ведь вроде все значения извлекаются правильно. В чем же тогда причина?  ..." 

Строго по спирали вернулись к первому посту соискателя.  

 
tara:

:) 

"... SOS! Вот фрагмент включаемого файла глобальных переменных. Остальная часть абсолютно в том же духе.

И что я только ни делал: менял параметры, убирал переменные из файла по отдельности и группами, что бы найти, где ошибка - все едино:

пишет предупреждение "not all control paths return a value". Но ведь вроде все значения извлекаются правильно. В чем же тогда причина?  ..." 

Строго по спирали вернулись к первому посту соискателя.  

А если присмотреться? Есть один маааленький нюанс, который я всё никак не могу донести до его сознания...

P.S.: int на void исправил.

 
evillive:

А если присмотреться? Есть один маааленький нюанс, который я всё никак не могу донести до его сознания...

P.S.: int на void исправил.


Да я-то исправил, но Вы, насколько я понял последний Ваш пост, опять вернули int ?

ЗЫ: увидел исправление, но теперь ничего не понял... Ну оставили Вы присвоение значений в функции, но они исчезли (см. выше)?