Ошибки, баги, вопросы - страница 2163
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я верю что вы на порядок лучше разбираетесь в оптимизациях, но с точки зрения простого юзера все выглядит немого странно -- вы заявляете что MQL компилятор генерирует код сравнимый по скорости с С++, но тут вдруг выясняется, что массивы в MQL нифига не быстрые.Управляемый/managed язык однозначно означает, что массивы должны жестко контролироваться. Без этого язык не может быть защищенным.
У статических массивов контроль проще и может частично упрощен на этапе оптимизатора кода. Для динамических контроля больше и его сложно упростить.
Код генерится на уровне качества C++, но в managed вещах конечно есть оверхед. Математика, циклы и все остальное на уровне C++.
индекс массива в лучшем случае тоже сводится к прямой одиночной ассемблерной команде, так что вопрос остается в силе
В managed языке только в статическом массиве с константным индексированием. То есть, если оптимизатор на 100% уверен, что не надо проверять границы и наличие буфера.
При нарушении условий появляется контроль наличия буфера и границ[ы].
Это базовые знания, которые надо иметь при программировании.
Если в перегруженной функции есть енум то стринг то при вызове её для интегера возникает проблема...
Я обращал внимание на это https://www.mql5.com/ru/forum/1111/page1297#comment_1382986
Но менять ничего не стали, поэтому ::EnumToString в шаблонах во многих случаях бесполезен
Продолжаем осваивать проекты и натыкаемся на
#resource "\\Experts\\[Project 2018]\\Expert Name\\Resources\\img\\open_buy.bmp"
resource name is too long '\Experts\[Project 2018]\Expert Name\Resources\img\open_buy.bmp' CPanel.mqh 6 1
Зачем нужны проекты если мы ограничены ?
Проект это ПРОЕКТ!!!!! в котором может быть 1000 картинок, звуков, справок файлов и Мы должны все свалить в одну папку ?
Я не любитель винегрета в каталогах, что бы писать много качественно должен быть порядок не только в голове но и везде...
Я обращал внимание на это https://www.mql5.com/ru/forum/1111/page1297#comment_1382986
Но менять ничего не стали, поэтому ::EnumToString в шаблонах во многих случаях бесполезен
Привет от fxsaber:
так взятие элемента по индексу у простого массива должно быть очень быстрой операцией, разве нет?
Продолжаем осваивать проекты и натыкаемся на
#resource "\\Experts\\[Project 2018]\\Expert Name\\Resources\\img\\open_buy.bmp"
resource name is too long '\Experts\[Project 2018]\Expert Name\Resources\img\open_buy.bmp' CPanel.mqh 6 1
Зачем нужны проекты если мы ограничены ?
Проект это ПРОЕКТ!!!!! в котором может быть 1000 картинок, звуков, справок файлов и Мы должны все свалить в одну папку ?
Я не любитель винегрета в каталогах, что бы писать много качественно должен быть порядок не только в голове но и везде...
Привет от fxsaber:
Приведенный код основан на недоработке компилятора
Результат: 1... а почему не 2 ?
При том что С++ сообщает при компиляции об ошибке, поскольку очевидно подходят обе функции и кроме того существующий сейчас в MQL порядок вообще не позволяет явно вызвать функцию (2)
Если эту ошибку устранят, то приведенный код станет по большей части неработоспособным
Ошибка при компиляции: tree optimization error
Частично поправим для обьектов, включаемых на этапе компиляции и не попадающие в код как именованный обьект.
Очень не хватает места в описании продуктов.
3600 символов это крайне мало для больших и серьезных программ.
Я думаю что многие со мной согласятся.
Для описания программ нужно не меньше 5000 - 10000 символов. Ну или на крайний вкладка с именем настройки программы
Модератор всегда может попросить убрать воду.
Вот сейчас пишу описание программы, использовал все 3600 символов только на описание настроек а даже половину возможностей не описал...