Ошибки, баги, вопросы - страница 1304

 
ns_k:
Build 1100 от 20.03.2015. Код компилируется нормально, хотелось избавиться от предупреждений. В принципе сами предупреждения, так сказать, не беспокоят, смутило то, что нет DoubleToInt, на использование которой, как мне показалось, намекает компилятор, выдавая "possible loss of data due to type conversion" :)

В данной ситуации нормализовать значение вещественного типа до 0 знаков после запятой излишне, т.к. нормализуется^

1. Значение вещественного типа до 0 после запятой, результат которого впоследствии все равно будете приводить явно или неявно к типу int и все что после запятой в любом случае проигнорируется.

2. Это лишняя операция для процессора, достаточно воспользоваться явным приведением типов:

lSign = (int)(MathAbs(xPosition.Profit())/xPosition.Profit());

А на будущее что бы понимать тему, просмотрите раздел справки по приведению типов, если его не достаточно, то в Интернете полно информации о приведении типов в Си и С++ :)

PS. по поводу xPosition.Profit() я так понимаю это вызов метода объекта класса, если нет на это предупреждений.

 

Задача если размер файла больше требуемого то удалить файл

   if(FileSize(file_handle)>1024) // 1 megabyte [MB] = 1048576 byte // 2 megabyte [MB] = 2097152 byte
      FileDelete(InpFileName);

Но файл упорно растет ... И не удаляется ...

 
VOLDEMAR:

Задача если размер файла больше требуемого то удалить файл

Но файл упорно растет ... И не удаляется ...

Файл надо сначала закрыть. А уже потом удалять
 
stringo:
Файл надо сначала закрыть. А уже потом удалять
Пробовал, file_handle тогда -1 и не вернуть размер файла...
 
stringo:
Файл надо сначала закрыть. А уже потом удалять
Все разобрался, в момент чтения записи запоминал размер , затем после всего если размер вырос то удаляем ...
 
_Konstantin_:

В данной ситуации нормализовать значение вещественного типа до 0 знаков после запятой излишне, т.к. нормализуется^

1. Значение вещественного типа до 0 после запятой, результат которого впоследствии все равно будете приводить явно или неявно к типу int и все что после запятой в любом случае проигнорируется.

2. Это лишняя операция для процессора, достаточно воспользоваться явным приведением типов:

А на будущее что бы понимать тему, просмотрите раздел справки по приведению типов, если его не достаточно, то в Интернете полно информации о приведении типов в Си и С++ :)

PS. по поводу xPosition.Profit() я так понимаю это вызов метода объекта класса, если нет на это предупреждений.

Спасибо!

(int) это то, что доктор прописал :)

 

 Господа разработчики!

Подстановка названий методов и свойств нечувствительна к регистру и это хорошо, но почему подстановка названий самих переменных должна работать иначе?

Сделайте пожалуйста, чтобы все было одинаково удобно

Спасибо! 

ps. Названия функций, кстати, тоже. Вообще, ощущение такое, что все, что после точки - нечувствительно к регистру, а все, что сначала - нет. Например, начните набирать Arrays - ArraySize не отобразится в списке 

 

 Хотелось бы наверняка узнать, в чём отличие эксперта от советника. Раньше я был уверен, что эксперт занимается автоторговлей, а советник лишь в нужные моменты подсказывает сигналы для входа в рынок (отсюда и различающаяся структура основных блоков программного кода). Тогда что же лежит по этим путям: 

\MQL5\Experts\Examples\MACD\MACD Sample.mq5,

\MQL5\Experts\Advisors\ExpertMACD.mq5?

Они оба торгуют как эксперты, автоматически, но второй находится в папке \Advisors , сиречь советники.

 

 

Туда же, к подсказкам. Стрелка вверх должна по идее перемещать курсор с самой верхней строчки на самую нижнюю ;)

 

Не могли бы пояснить как такое может быть? 

В заголовке период указывается 15 минут, а по факту график отображается часовиком 

 

 

 

Причина обращения: