Ошибки, баги, вопросы - страница 2679
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
2365 - код посыпал ошибками. Разбираться пока было некогда. Откатился на 2361 - норм. В mq4 - та же ситуация.
Спасибо за сообщение, проверю
похоже в передаче параметров при вызове конструктора базового класса.
Баг МТ5 (build 2365) Ошибка компиляции при неявном вызове конструктора класса используя оператор присвоения, когда в качестве аргумента конструктора используется передача указателя по ссылке.
Если передачу указателя по ссылке заменить на передачу по значению - то все работает.
Спасибо за сообщение, исправлено
Баг МТ5 (build 2365) ошибка компиляции при вызове конструктора базового класса, когда шаблонный параметр шаблонного класса используется в виде базового класса.
В МТ5 (build 2363) проблем не было.
Видно, что ArrayResize для объектов стал работать быстре.
Ещё раз, сложность одной из частей функции ArrayResize удалось свести от логарифма к нолю
Спасибо большое за ускорение работы ArrayResize для зарезервированной памяти.
MT5 (build 2365) на реальном проекте скорость работы std::vector::push_back стала в 1.5 раза быстрее по сравнению с предыдущим билдом.
А отставание от std::vector:resize сократилось с 2.2 раз к 1.45 раза.
билд 2366, по моему не правильно теперь работают константы
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 1. 4
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 2. 5
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 3. 6
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 4. 7
если заменить const на static , то будет работать как и ожидалось - один вызов f1() и f2() при инициализации a и b
2020.03.21 12:58:03.496 tst (EURUSD,H1) A::f1
2020.03.21 12:58:03.496 tst (EURUSD,H1) A::f2
2020.03.21 12:58:03.496 tst (EURUSD,H1) 1. 4
2020.03.21 12:58:03.496 tst (EURUSD,H1) 2. 5
2020.03.21 12:58:03.496 tst (EURUSD,H1) 3. 6
2020.03.21 12:58:03.496 tst (EURUSD,H1) 4. 7
если написать такой код, то вообще сплошной не отлавливаемый баг
билд 2366, по моему не правильно теперь работают константы
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 1. 4
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 2. 5
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 3. 6
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f1
2020.03.21 12:55:59.904 tst (EURUSD,H1) A::f2
2020.03.21 12:55:59.904 tst (EURUSD,H1) 4. 7
если заменить const на static , то будет работать как и ожидалось - один вызов f1() и f2() при инициализации a и b
2020.03.21 12:58:03.496 tst (EURUSD,H1) A::f1
2020.03.21 12:58:03.496 tst (EURUSD,H1) A::f2
2020.03.21 12:58:03.496 tst (EURUSD,H1) 1. 4
2020.03.21 12:58:03.496 tst (EURUSD,H1) 2. 5
2020.03.21 12:58:03.496 tst (EURUSD,H1) 3. 6
2020.03.21 12:58:03.496 tst (EURUSD,H1) 4. 7
Именно так всё и должно работать.
если написать такой код, то вообще сплошной не отлавливаемый баг
Здесь тоже всё правильно.
Именно так всё и должно работать.
в прошлом году работало не так - специально тестировал модификаторы const
и кажется @Ilyas объяснял как происходит запуск MQL-программы, сначала инициализируются все const и static вне зависимости от того где они описаны, затем уже конструкторы классов будут вызваны
ладно, с этой инициализацией static / const - ее можно еще правильно распределить, но вот то, что модификатор const не гарантирует, что компилятор это проверит - очень неожиданно - мой второй пример