Ошибки, баги, вопросы - страница 2473
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
На текущий момент не возможно использовать статическую переменную, объявленную внутри шаблонного класса.
С внедрением пространства имен, данное ограничение можна будет обойти?
Да, можно.
Код будет немного другим, более правильным, вот пример:
Результат:
Есть ли возможность получить альфа доступ к МТ с поддержкой namespace?
Действительно надо в рамках изучения возможность написания "умного контейнера", не для поиска багов/уязвимостей и т.д.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Ошибки, баги, вопросы
Sergey Dzyublik, 2019.05.23 13:52
За последнее время предоставлено информацию о десятке "особенностей" работы и багов в МТ.
Как узнать стоит ждать их исправление или нет?
Прошу не предлагать тестить все каждый раз при выходе нового билда.
# (не исправлено в MT5(build 2059)) "Ошибка компиляции при передаче в шаблонную функцию параметра (void*)(NULL)"".
# (исправлено в MT5(build 2059)) "Тестер стратегий: запланировано 2 прохода, но на практике бесконечное число проходов > 900шт из-за ошибки "OnInit critical error"".
# (не исправлено в MT5(build 2059)) "Некорректное значение поля размер массива в рамках работы дефолтного оператора присваивания для структур с динамическими массивами".
# (не исправлено в MT5(build 2059)) "Компилятор не видит дефолтный конструктор копирования класса при возвращении объекта класса по значению из функции".
# и # (исправлено в MT5(build 2059)) "Ошибка компиляции при выполнении type cast "самого в себя" для шаблонных классов и "сложных" структур".
# (не исправлено в MT5(build 2059)) "При работе с typedef использование шаблонной функции с явной специализацией не вызывает генерацию кода этой шаблонной функции".
# (не исправлено в MT5(build 2059)) "Ошибка компиляции при повторном использовании одной и той же сигнатуры функции в рамках typedef".
# (не исправлено в MT5(build 2059)) "Значительная часть функций для работы со строками не работает с NULL символами в строке (например: ShortArrayToString, StringInit, StringFill)".
# (не исправлено в MT5(build 2059)) "Функция StringSetLength работает только в сторону "обрезания" длины строки, но не увеличения".
# (исправлено в MT5(build 2057)) "Тестер стратегий: запуск 750 процессов "metatester64.exe"".
# "Форум www.mql5.com, при правке сообщения с картинкой, предыдущая картинка не заменяется на новую".
Предложения:
# "Предоставить пользователю возможность принудительной генерации/удаления кода для оператора присвоения (конструктор копирования) по умолчанию".
# "Разрешить функции ArrayCopy копировать классы и "сложные" структуры, аналогично тому как структуры предоставляют функционал deep copy для любого типа объекта".
# "Предоставить пользователю функционал для чтения/установки значения Capacity при работе с динамическими массивами"
# "Изменения по улучшению инфографики сервиса "Сигналы""
Сегодня у меня в терминале не закачивается тиковая история на реальном счете срочного рынка, брокер Открытие.
Данные в стакане меняются.
Сейчас 24.05.2019 23:40
В терминале последний тик за 23.05.2019.
Такая же ситуация по некоторым другим инструментам, включая те, по которым я сам производил сделки.
На втором терминале (отдельная установка), на другом счете того же брокера эффект тот же.
Ошибка компиляции при передаче в шаблонную функцию параметра (void*)(NULL):
Все работало в (build 2057), возможно что-то поламалось в рамках исправления:
# и # "Ошибка компиляции при выполнении type cast "самого в себя" для шаблонных классов и "сложных" структур".
Еще в build 2056 все работало нормально. А в 2059 - уже ошибка при компиляции:
А если void заменить на A (*), то все нормально. А какая разница?
Более того - ошибка при компиляции возникает даже в этом случае:
При компиляции в командном build 2059x32 абстрактная ошибка:
но через IDE не воспроизводится - может и случайность
Как делаете выбор между использованием шаблонов и void* ?