Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5 - страница 134

fxsaber:

Столкнулся с тем, что после DebugBreak() Визуализатор показывает абсолютно не соответствующее реальности торговое окружение.

Например, показывает, что открыты одни позиции, а на самом деле через MQL печатаешь - другие.

Странно, что это никто не замечал. В глаза же бросается. В журнале визуализатора всё правильно, а во вкладках торговля и история и на графике всё неактуальное.

Edgar:

Странно, что это никто не замечал. В глаза же бросается. В журнале визуализатора всё правильно, а во вкладках торговля и история и на графике всё неактуальное.

Тоже замечал:


Кстати, не только после DebugBreak(), а после любого breakpoint.
Замечание по ME
class CLASS
{
public:
  static void OnStart() {}
};

void OnStart()
{
  CLASS::OnStart(); // ALT+G перескакивает на ::OnStart(), выбора не предлагает.
}
Редактор с шаблонами классов
template <typename T>
class A
{
public:
  void Func() {}
};

void OnStart()
{
  A<int> a;
  
  a.Func(); // ALT+G не срабатывает.
}
Ошибка с макросами
#define MACROS 1
#define TOSTRING(A) #A + " = " + (string)(A)

void OnStart()
{
  Print(TOSTRING(MACROS)); // 1 = 1
}


Ожидалось

MACROS = 1
fxsaber:
Ошибка с макросами


Ожидалось

Не согласен. По памяти я не смогу точно объяснить, но вы неправы.

В документации пример

#define COMPANY_NAME      "MetaQuotes Software Corp."
Что должно быть подставлено в вашем примере?

Проверил в C++: выдаётся MACROS.   Хотя тут наверное нет однозначного мнения, как правильней

Alexey Navoykov:

Проверил в C++: выдаётся MACROS.   Хотя тут наверное нет однозначного мнения, как правильней

Ну почему нет, так всегда работало. Если настаиваете на подстоновке значения, то нужно ещё раз раскрыть:

#define TOSTRING_EXPAND(A) #A
#define TOSTRING(A) TOSTRING_EXPAND(A)
Alexey Viktorov:

Не согласен. По памяти я не смогу точно объяснить, но вы неправы.

В документации пример

Что должно быть подставлено в вашем примере?

Две недели назад работало так, как ожидалось. После недавних правок макросов, они стали раскрываться.

Дело в том, что после # ничего раскрываться не должно. Это просто ошибка, которую, думаю, быстро поправят.