Ошибки, баги, вопросы - страница 1959

 
А в чем разница между этими двумя строками?
void OnStart()
{
  int i1 = (1 / 2) ? 1 : 0; // expression not boolean
  int i2 = (0) ? 1 : 0;     // no problem
}
 

По редактору

  • Если ВНУТРИ метода определен класс, то редактор ошибочно показывает методы этого класса в списке функций (ALT+M).
  • Как в редакторе понять, внутри какой функции/метода находится сейчас курсор?
  • Если в Metaeditor набирать следующую строку
    DoubleToString(GetMicro
    то тултип (или как правильно называется всплывающая подсказка с вариантами?) GetMicrosecondCount не появляется.


  • Когда появляется тултип с вариантами, невозможно перейти вниз списка, нажав клавишу ВВЕРХ. Т.е. список незациклен, что ни есть правильно.
 

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

 

Если когда-то давно были совершены сделки по символу, которого сейчас НЕТ в Обзоре рынка (включая скрытую часть), то откуда при отображении этих сделок терминал берет Digits-данные по этим символам?

 
Возможно ли сделать StringReplace удобнее/логичнее в использовании?
int  StringReplace( 
   string&         str,              // строка, в которой будет осуществляться замена 
   const string    find,             // искомая подстрока 
   const string    replacement,      // подстрока, которая будет вставлена в найденные места 
   const uint Amount = 0             // Максимальное количество замен, 0 - все меняем.
   );

Например, если знаем, что искомая строка для замены встречается всего один раз, то зачем расходовать вычислительные ресурсы на поиск после первой же замены?

 

При запуске Оптимизации просьба подсвечивать вкладку Журнал в случае ошибки. Сейчас приходится гадать, произошла ошибка оптимизации или же Оптимизация долго выполняется. И не узнать это, пока сам не догадаешься заглянуть в Журнал. Нужно сразу явно сообщать пользователю в случае ошибки.

 
Баг тестера
void OnInit()
{
  ExpertRemove();

  Print((bool)_StopFlag); // Реал - true, тестер - false
}
 
_StopFlag и IsStopped() не являются bool. Подправьте Справку.
void OnStart()
{
  Print(_StopFlag);   // 0
  Print(IsStopped()); // 0
  
  bool StopFlag = _StopFlag;
  
  Print(StopFlag); // false
}
 

В тестере при снятии денег невозможно задать комментарий. Прошу дополнить

bool  TesterWithdrawal( 
   double money      // размер снимаемой суммы 
   const string Comment = "withdrawal"
   );
 

В тестере только с локальными Агентами получаю такое сообщение

Tester  debug version of "fxsaber\Test.ex5" detected
Tester  debug version of "MQL5\Experts\fxsaber\Test.ex5" can be optimized on local agents only, no Cloud, no Farm
Tester  OnTesterInit works too long...
Tester  OnTesterInit works too long...

Явно баг.