Новая версия платформы MetaTrader 5 build 1930: Плавающие окна графиков и .Net библиотеки в MQL5 - страница 117
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. О каком полиморфном типе речь? typeid возвращает type_info, если нужно получить динамический тип из указателя на базовый класс, то static_cast/dynamic_cast. В мкл это доступно, а имя типа можно получить через typename.
dynamic_cast тут ни при чём, речь идёт о получении информации о классе объекта.
typename задумано просто для типа переменной, насколько я понимаю. Поэтому нужна дополнительная фича. Да и я же не говорил о том, чтобы портировать typeid в нативном виде. Речь шла просто об аналогичом функционале. И хэш как таковой не нужен, достаточно просто порядковый номер класса в системе (в дополнении к имени)
Пока могу только сказать, что раз Ваш индикатор выдает следующее
...
dynamic_cast тут ни при чём, речь идёт о получении информации о классе объекта.
typename задумано просто для типа переменной, насколько я понимаю. Поэтому нужна дополнительная фича. Да и я же не говорил о том, чтобы портировать typeid в нативном виде. Речь шла просто об аналогичом функционале. И хэш как таковой не нужен, достаточно просто порядковый номер класса в системе (в дополнении к имени)
Видно, что статический, а значит логично разрешить
typename(var) new_var;
но нет, нельзя. В итоге текущий typename является как недо_decltype, так и недо_type_info::name(). Возможно, ему следует выдавать динамический тип (Q), это будет то, что ищите.
Поэтому нужна дополнительная фича
...
ЗЫ Такой код не заполняет все индикаторные буферы
Отсюда в индикаторных буферах случайные значения.
На графике всё верно отображается. Каким образом вы пришли к таким выводам? Или во время оптимизации заполнение индикаторных буферов осуществляется, как-то иначе? Поэтому результаты не соответствуют?
Логика if-else показывает, что индикаторные буферы могут не заполняться заданными значениями. Т.е. там могут быть случайные числа. Отсюда и расхождение вполне вероятно.
Логика if-else показывает, что индикаторные буферы могут не заполняться заданными значениями. Т.е. там могут быть случайные числа. Отсюда и расхождение вполне вероятно.
Нужно изобрести метод, с помощью которого можно точно доказать это.
Вот Ваша схема
А это одна из комбинаций, когда буферы не будут заполнены: Condition1 = true, Condition2 = false, Condition3 = false.
Вот Ваша схема
А это одна из комбинаций, когда буферы не будут заполнены: Condition1 = true, Condition2 = false, Condition3 = false.