Совершенно случайно увидел у себя в коде косяк, но при этом все работало корректно.
Но сам факт удивил... :-)
#property copyright "Copyright © 2010, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" double Test; //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- if(Test==false) { Test=true; } //---- return(0); } //+------------------------------------------------------------------+
а можно для старослужащих?
в чём баг? Фича?
в чём полезность или непредсказуемость компилятора Вы узрели?
Или как в зеркале - видим зерцало и юношей которых уже нет?
;))
Не баг и не фича. Как я понимаю, сработало условие double Test==false.
Так и должно быть,- в чем вопрос-то?
Видимо вызвал удивление факт корректной работы кода, когда с переменной double работают как с bool.
Так тут все просто. true=1.0 false=0.0
Просто несколько нерационально и все...
Видимо вызвал удивление факт корректной работы кода, когда с переменной double работают как с bool.
Так тут все просто. true=1.0 false=0.0
Просто несколько нерационально и все...
да да, я удивился, что с даблом можно работать как с булеан...
Как для меня, это несколько диковато, видимо я один такой.. :-)
есть правила преобразования.
их хорошо помнит компилятор. он так заточен.
и ДОЛЖЕН помнить кодер!
Я полагал, что true и false это константы, поэтому по барабану какому типу переменной присваивать значение - всё преобразуется.
Вооот, кстати, да. Грамотный ответ - я как - то не мог найти решения... все думал... :-)
Вообще - как меня учили в Политехе, изначально: true=есть (подаем) напряжение на плате(-у) (1), false=нет напряжения на плате (0). А эти числа 0 и 1 входят в множество как Интеджер, так и дабл, как - то так.
Слушайте, а вот что движет авторами, создающими такие ветки?
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Совершенно случайно увидел у себя в коде косяк, но при этом все работало корректно.
Но сам факт удивил... :-)