Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Узнай, как социальный трейдинг увеличит твой доход
Sergey
13
Sergey 2011.08.01 16:10 

Люди помогите пожалуйста разобраться где ошибка.

Уже несколько раз видел, что с такой ошибкой здесь справлялись, но так как у меня опыта программирования еще нету, то не могу понять в чем дело.

При компиляции пишет '(' - function definition unexpected. Указывает именно на строку int Fun_Error.

Заранее Всем большое спасибо.

Сам код:

//---------------------------------------------------------------

//БЛОК ОТРАБОТКИ ОШИБОК:

int Fun_Error(int Error)

{ // Ф-ия обработ ошибок

switch()

{ // Преодолимые ошибки

case 4: Alert("Торговый сервер занят. Пробуем ещё раз..");

Sleep(3000); // Простое решение

return(1); // Выход из функции

case 135:Alert("Цена изменилась. Пробуем ещё раз..");

RefreshRates(); // Обновим данные

return(1); // Выход из функции

case 136:Alert("Нет цен. Ждём новый тик..");

while(RefreshRates()==false) // До нового тика

Sleep(1); // Задержка в цикле

return(1); // Выход из функции

case 137:Alert("Брокер занят. Пробуем ещё раз..");

Sleep(3000); // Простое решение

return(1); // Выход из функции

case 146:Alert("Подсистема торговли занята. Пробуем ещё..");

Sleep(500); // Простое решение

return(1); // Выход из функции

// Критические ошибки

case 2: Alert("Общая ошибка.");

return(0); // Выход из функции

case 5: Alert("Старая версия терминала.");

Expert_working = false; // Больше не работать

return(0); // Выход из функции

case 64: Alert("Счет заблокирован.");

Expert_working = false; // Больше не работать

return(0); // Выход из функции

case 133:Alert("Торговля запрещена.");

return(0); // Выход из функции

case 134:Alert("Недостаточно денег для совершения операции.");

return(0); // Выход из функции

default: Alert("Возникла ошибка "); // Другие варианты

return(0); // Выход из функции

}

//----

return;

//+------------------------------------------------------------------+


o_O
Модератор
23319
o_O 2011.08.01 16:19  

switch()

это что?

Роман
7939
Роман 2011.08.01 16:41  
S.A.Heavy:

Люди помогите пожалуйста разобраться где ошибка.

Уже несколько раз видел, что с такой ошибкой здесь справлялись, но так как у меня опыта программирования еще нету, то не могу понять в чем дело.

При компиляции пишет '(' - function definition unexpected. Указывает именно на строку int Fun_Error.

Заранее Всем большое спасибо.

Сам код:


Правильный вариант см. здесь:

int Fun_Error(int Error)                        // Ф-ия обработ ошибок
  {
   switch(Error)
     {                                          // Преодолимые ошибки            
      case  4: Alert("Торговый сервер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 135:Alert("Цена изменилась. Пробуем ещё раз..");
         RefreshRates();                        // Обновим данные
         return(1);                             // Выход из функции
      case 136:Alert("Нет цен. Ждём новый тик..");
         while(RefreshRates()==false)           // До нового тика
            Sleep(1);                           // Задержка в цикле
         return(1);                             // Выход из функции
      case 137:Alert("Брокер занят. Пробуем ещё раз..");
         Sleep(3000);                           // Простое решение
         return(1);                             // Выход из функции
      case 146:Alert("Подсистема торговли занята. Пробуем ещё..");
         Sleep(500);                            // Простое решение
         return(1);                             // Выход из функции
         // Критические ошибки
      case  2: Alert("Общая ошибка.");
         return(0);                             // Выход из функции
      case  5: Alert("Старая версия терминала.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 64: Alert("Счет заблокирован.");
         Work=false;                            // Больше не работать
         return(0);                             // Выход из функции
      case 133:Alert("Торговля запрещена.");
         return(0);                             // Выход из функции
      case 134:Alert("Недостаточно денег для совершения операции.");
         return(0);                             // Выход из функции
      default: Alert("Возникла ошибка ",Error); // Другие варианты   
         return(0);                             // Выход из функции
     }
  }
Sergey
13
Sergey 2011.08.01 17:06  

Посмотрел, перебил, все равно та же ошибка со скобкой... копировал даже... один фиг.

В самом учебнике походу опечатка. Блин не пойму ваще что не так...

o_O
Модератор
23319
o_O 2011.08.01 17:09  
уберите эту функцию из кода и компильните.
Роман
7939
Роман 2011.08.01 17:22  
S.A.Heavy:

Посмотрел, перебил, все равно та же ошибка со скобкой... копировал даже... один фиг.

В самом учебнике походу опечатка. Блин не пойму ваще что не так...


Это отсутствие скобки - ищи в тексте программы после выполнения рекомендации по предыдущему посту.
charter
1724
charter 2011.08.01 17:41  

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

Вставьте функцию в самом конце кода, за пределами старт().

/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий