Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1097
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В качестве параметра передаётся указатель на функцию. Я вижу с классами никто не разобрался как это делать. Мне также до сих пор непонятно зачем нужно возвращать указатель на класс что это даёт.
Вот интересные примеры но это не по моему вопросу
Также в справочнике видел что-то похожее но по закрывал уже эти сайты т.к. руки болят да и работу нужно делать.Зачем так мудрить в такой простой задаче? Ведь можно просто через объект класса получить нужные данные
Со ссылками, указателями и указателями на функции я знаком, но на деле использую их редко. Да и в целом, как по мне, они нужны только для экономии оперативной памяти - а советники с индикаторами это не игры, поэтому можно обойтись обычными переменными и объектами класса в глобальной области видимости
Зачем так мудрить в такой простой задаче? Ведь можно просто через объект класса получить нужные данные
Со ссылками, указателями и указателями на функции я знаком, но на деле использую их редко. Да и в целом, как по мне, они нужны только для экономии оперативной памяти - а советники с индикаторами это не игры, поэтому можно обойтись обычными переменными и объектами класса в глобальной области видимости
На простой задаче мудрить не охота, и конечно я переделываю свои программы где ранее вызывалась функция я пишу арифметическое выражение для облегчение расчётов или перехожу на упрощённую перегружаемую функцию, поэтому и хочется перевести программу на классы. Но как вы выше и написали редко их используете, а теперь вопрос классы есть а создавать указатели на функции этого класса нельзя, зачем такое программирование нужно, если делаешь одно то нельзя делаешь другое то нельзя, это не программирование а чёрт знает что.
На простой задаче мудрить не охота, и конечно я переделываю свои программы где ранее вызывалась функция я пишу арифметическое выражение для облегчение расчётов или перехожу на упрощённую перегружаемую функцию, поэтому и хочется перевести программу на классы. Но как вы выше и написали редко их используете, а теперь вопрос классы есть а создавать указатели на функции этого класса нельзя, зачем такое программирование нужно, если делаешь одно то нельзя делаешь другое то нельзя, это не программирование а чёрт знает что.
Класс это шаблон какого-то объекта, и для того чтобы пользоваться функционалом который есть в этом шаблоне - нужно сначала создать объект
По сути дела имя класса выступает в роли типа данных, например как int, double, string и тд. но с расширенным функционалом. Ведь нельзя объявить переменную не указав её тип
Да и к тому всему вы можете просто отвязать функцию от класса и её можно будет использовать в классе и отдельно от класса не создавая объект
Может ли быть какая либо другая причина по которой индикатор не работает, за исключением что его файл удалили из соответствующей папки? (индикатор скомпилирован и работает в одном терминале, а в другом не работает)
Класс это шаблон какого-то объекта, и для того чтобы пользоваться функционалом который есть в этом шаблоне - нужно сначала создать объект
По сути дела имя класса выступает в роли типа данных, например как int, double, string и тд. но с расширенным функционалом. Ведь нельзя объявить переменную не указав её тип
Да и к тому всему вы можете просто отвязать функцию от класса и её можно будет использовать в классе и отдельно от класса не создавая объект
Ну разве что. Ну просто классы сложная тема, и в справочнике куча примеров по передаче, по созданию ссылок и указателей, я думаю что это возможно (по крайней мере в с++ это возможно но mql4 к c++ отношения никакого не имеет), тут нужно разобраться понять как это работает. В справке приведены эти примеры они очень сложные и перегруженные, вместо того чтобы взять класс и показать простой пример они это перегрузили лишними расчётами и информацией и я не могу понять что они имеют в виду, от усталости и истощения по закрывал я эти все ссылки. Ладно значит буду вытягивать функции из класса.
Может ли быть какая либо другая причина по которой индикатор не работает, за исключением что его файл удалили из соответствующей папки? (индикатор скомпилирован и работает в одном терминале, а в другом не работает)
Из маркета?
Может ли быть какая либо другая причина по которой индикатор не работает, за исключением что его файл удалили из соответствующей папки? (индикатор скомпилирован и работает в одном терминале, а в другом не работает)
в логе терминала и экспертов смотрите сообщения
Ваш скрин показывает лишь то, что у этого индикатора нет исходника
Может ли быть какая либо другая причина по которой индикатор не работает, за исключением что его файл удалили из соответствующей папки? (индикатор скомпилирован и работает в одном терминале, а в другом не работает)
Из маркета?
Нет
в логе терминала и экспертов смотрите сообщения
Ваш скрин показывает лишь то, что у этого индикатора нет исходника
Спасибо
Возможно ему нужны доп библиотеки
Точно нет, я его писал - я бы знал
Подскажите пожалуйста почему компилятор выдает предупреждение в следующем MQL4 коде проверочного скрипта:
Предупреждение в строке 27 о несоответствии типов данных. Обе переменные имеют одинаковый тип int. Ниже скриншот компиляции скрипта.
Если же строку 27 заменяю на
то предупреждение пропадает.
В чем фокус?