Ошибка при компилирование mq4 в ex4 в новом компиляторе

 

Здравствуйте,

При компилирование в новом компиляторе (mq4 в ex4) , выдаёт из ошибку:

if (alertsOn)

      {

      if (alertsOnCurrent)

           int whichBar = 0;

      else     whichBar = 1; 'whichBar' - undeclared identifier


         if (trend[whichBar] != trend[whichBar+1]) 'whichBar' - undeclared identifier

         if (trend[whichBar] == 1)

               doAlert("uptrend");

         else  doAlert("downtrend");       

   } 

В чём может быть проблема? Спасибо за ответ. Понимаю, что не объявленный идентификатор, но в старом компиляторе таких проблем не было.

Объявляю   whichBar = 1, но остается одна ошибка. Как лучше в новом компиляторе объявить идентификатор. В старом компиляторе такой проблемы нет всё нормально работает.


 
vapostolidi:

Здравствуйте,

При компилирование в новом компиляторе (mq4 в ex4) , выдаёт из ошибку:

if (alertsOn)

      {

      if (alertsOnCurrent)

           int whichBar = 0;

      else     whichBar = 1; 'whichBar' - undeclared identifier


         if (trend[whichBar] != trend[whichBar+1]) 'whichBar' - undeclared identifier

         if (trend[whichBar] == 1)

               doAlert("uptrend");

         else  doAlert("downtrend");       

   } 

В чём может быть проблема? Спасибо за ответ. Понимаю, что не объявленный идентификатор, но в старом компиляторе таких проблем не было.

Объявляю   whichBar = 1, но остается одна ошибка. Как лучше в новом компиляторе объявить идентификатор. В старом компиляторе такой проблемы нет всё нормально работает.


if (alertsOn)

      {
int whichBar = 0;        

      if (alertsOnCurrent)

           whichBar = 0;

      else     whichBar = 1; 

         if (trend[whichBar] != trend[whichBar+1]) 
         if (trend[whichBar] == 1)

               doAlert("uptrend");

         else  doAlert("downtrend");       

   } 
 
Wahoo:
спасибо)
 
vapostolidi:
спасибо)

ну если уже и делать, то без ненужной избыточности:

if (alertsOn)
      {
int whichBar = 0;        
      if (alertsOnCurrent)
           whichBar = 0;
      else     whichBar = 1; 
         if (trend[whichBar] != trend[whichBar+1]) 
         if (trend[whichBar] == 1)
               doAlert("uptrend");
         else  doAlert("downtrend");       
   } 

-- лучше так:

if (alertsOn)
  {
   int whichBar = 0;        
   if (!alertsOnCurrent)
      whichBar = 1; 
   if (trend[whichBar] != trend[whichBar+1]) 
      if (trend[whichBar] == 1)
         doAlert("uptrend");
      else  doAlert("downtrend");       
  } 
 
abolk:

ну если уже и делать, то без ненужной избыточности:

-- лучше так:

Спасибо большое за информацию) только стрелочки пропали, сейчас подумаю в чём дело
Причина обращения: