Ошибки, баги, вопросы - страница 1889
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
если сделать так:
т.е. приведение к родителю, то все проходит корректно, видимо в структуре языка очень существенные изменения прошли и теперь производный тип однозначно не тип предок.
Если Вы не проверяете, что возвращает dynamic_cast, то его использование не имеет смысла.
Спасибо, в моем примере NULL возвращает. Почему так происходит?
Могли бы Вы привести практичный пример использования данной фишки?
Разработчики используют ее только в Graphic.mqh следующим образом
При этом у них такие определения классов/объектов
Т.е. они приводят родительский указатель к потомку. Ну так и в своем примере ровно это и делаю! Где загвоздка?
Указатель на родительский класс фактически может содержать указатель на потомка.
Указатель на родительский класс фактически может содержать указатель на потомка.
Спасибо, въехал!
а я так и не понял, почему в MQL невозможно приведение указателя к типу указателя класса наследника, а в С++ это возможно, разъясните плз это баг в MQL или так и должно быть?
в С++ это возможно, разъясните плз это баг в MQL или так и должно быть?
В чем ошибка выполнения
Все верно, нельзя приводиться снизу вверх, только сверху вниз. Это ради безопасности.
С С++ сравнивать нельзя - там все что угодно к чему угодно привести можно.
в С++ это тоже возможно только если указатель на базовый класс указывает на потомка.
Не понял что вы хотели этим сказать, но этот код:
Все верно, нельзя приводиться снизу вверх, только сверху вниз. Это ради безопасности.
С С++ сравнивать нельзя - там все что угодно к чему угодно привести можно.
теперь понятно, спс за разъяснения ))
Не понял что вы хотели этим сказать, но этот код: