Ошибки, баги, вопросы - страница 1337
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Разработчики не без юмора
По мне так загрузка, а "Закачка" что то типа качать дерево в право или лево.
Если бы "раскачка", то можно было бы и с деревом сравнить: "вправо/влево" - вы тоже с юморком (слитно "вправо/влево")
"раскачка" в лодке ,
А насчет (слитно "вправо/влево") не мой косяк, а мазилы фаерфокс .
На символах BR-8.15 и BR-10.15 глючит, остальные периоды BR - нормально.
build 1150 real открытие win7 x64 максимальная
Видеофайлы .mp4 в прицепе.
+ на периоде M1 (например)
Если отжать кнопку - "автопрокрутка графика к концу с приходом новых тиков" - график смещается в начало
затем если нажать клавишу "END" график на секунду перемещается в конец и опять - график смещается в начало.
Как-то раньше не заострял внимание, но сейчас при работе с большими массивами объектов классов обратил внимание на черезчур большой расход памяти. Проверил по sizeof() - абсолютно пустой класс занимает 16 байт. А учитывая, что классы тут управляемые, то добавляем ещё 8 байт на указатель. Итого 24 байт. Как-то черезчур накладно.
Залез в документацию и вот что там обнаружил:
Спрашивается: зачем в простых классах (не участвующих в наследовании) нужна таблица виртуальных функций? Ведь об этих классах всё известно на этапе компиляции.
Выходит, что методы в них вызываются точно так же, как и виртуальные методы, т.е. идёт дополнительное перенаправление доступа по таблице. И где же хвалёная оптимизация компилятора? Как можно после этого заявлять о каком-то сравнении производительности с С++?
Кроме того, MQL, некоторые виртуальные вызовы выполняет как вызов обычной функции, не через таблицу.
Как написал Ренат, классы в MQL действительно всегда имеют виртуальную таблицу, которая занимает 8 байт + 8 байт метаинформации.
Разработчики не без юмора
По мне так загрузка, а "Закачка" что то типа качать дерево в право или лево.
Выделенное предположение неверно, через таблицу вызываются только виртуальные методы и моё утверждение верно не только для MQL компилятора.
Кроме того, MQL, некоторые виртуальные вызовы выполняет как вызов обычной функции, не через таблицу.
Как написал Ренат, классы в MQL действительно всегда имеют виртуальную таблицу, которая занимает 8 байт + 8 байт метаинформации.
Благодарю за ответ. Но всё же не могли бы вы пояснить, зачем простому классу, ни от кого не наследуемому, а следовательно не участвующему в виртуализации, нужна таблица? Ренат упоминал про виртуальные деструкторы, но в рассматриваемом случае ведь виртуализировать нечего. Деструктор всего один, поэтому его тоже можно заинлайнить, разве нет? Тем самым оставив лишь 8 байт метаданных.
Исполняющая система(окружение MQL программы) построена с учётом того, что класс занимает минимум 16 байт.
билд 854 винда 10 64 х
при тестировании советников с визуализацией при попытке закрыть любое другое ранее открытое окно, кроме текущего рабочего с тестом, тестирование прерывается ...
Опробавано закрыте через среднюю клавишу мыши и через контекстное меню ...