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