Новая версия платформы MetaTrader 5 build 2085: Интеграция с Python и массовые улучшения в тестере стратегий - страница 47
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Неужели в C++ такая удобная конструкция с шаблоном не прокатывает?
Как сделать, чтобы этот код компилировался без проблем?
По всей видимости теперь только если уговорить Ильяса отменить данное решение... ) Мне лично тоже неясны мотивы этого запрета. Занудства ради? Кому от таких конструкций было плохо? Какие там могут быть проблемы? Это не же не перекрытие метода, а просто перегрузка с совершенно другой сигнатурой. Вызвать другой метод по ошибке невозможно.
Пусть даже в С++ по какой-то причине это запрещено, но там есть выбор альтернативных решений. Например исходный тип может унаследовать интерфейс с соответствующим методом, тогда вместо шаблонного типа в функцию будет передаваться интерфейсный тип. И это будет правильно. А в MQL нет множественных интерфейсов, классы приходится наследовать непосредственно друг от друга. Получается, что и без того ограниченные возможности MQL ещё больше урезаются, лишая простора для манёвра.
Кстати посмотрел внимательнее, в вашем конкретном случае вполне можно обойтись интерфейсом (и не можно, а нужно)
В билде 2136 сломали typename()
Прошу починить обратно.
Кстати посмотрел внимательнее, в вашем конкретном случае вполне можно обойтись интерфейсом (и не можно, а нужно)
Нет, интерфейсный костыль не нужен. Речь идет об использовании сторонних классов.
Нет, интерфейсный костыль не нужен. Речь идет об использовании сторонних классов.
К сожалению, пока не добавили инструкцию using, придётся заводить в производном классе нужную перегрузку из которой вызвать родительский метод
На быстродействии это не скажется.
придётся заводить в производном классе нужную перегрузку из которой вызвать родительский метод
Такое решение не сильно отличается от интерфейсного решения, к сожалению.
Придется править написанные другими авторами классы.
Такое решение не сильно отличается от интерфейсного решения, к сожалению.
Придется править написанные другими авторами классы.
Сделайте конструкцию более высокоуровневую: