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

 

Поясните почему при объявлении на глобальном уровне экземпляра класса CCanvas компилятор ругается - unresolved static variable 'CCanvas::m_default_colors'.

Если объявлять локально в любой функции то все хорошо.

#include <Canvas\Canvas.mqh>
//CCanvas canvas; если объявлять на глобальном уровне то - unresolved static variable 'CCanvas::m_default_colors'
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   CCanvas canvas; // тут компилируется
  }
//+------------------------------------------------------------------+

 Билд терминала последний - 842.


 
kPVT:

Поясните почему при объявлении на глобальном уровне экземпляра класса CCanvas компилятор ругается - unresolved static variable 'CCanvas::m_default_colors'.

Если объявлять локально в любой функции то все хорошо.

 Билд терминала последний - 842.


Изменилось требование к размещению статических членов классов.
Данную ошибку стандартной библиотеки уже исправили.
Документация по MQL5: Стандартная библиотека
Документация по MQL5: Стандартная библиотека
  • www.mql5.com
Стандартная библиотека - Документация по MQL5
Файлы:
Canvas.mqh  83 kb
 

Добрый день,

Я использую NormalizeDouble для округления лота.

Однако не все цифры  округляются до двух цифр после запятой.

В чём проблема?/решение? 

NormalizeDouble(0.07000000000000001,2);  //выдаёт всё тоже самое 0.07000000000000001 вместо ожидаемой 0.07

заранее спасибо.

 
ArtiFex:

Добрый день,

Я использую NormalizeDouble для округления лота.

Однако не все цифры  округляются до двух цифр после запятой.

В чём проблема?/решение? 

NormalizeDouble(0.07000000000000001,2);  //выдаёт всё тоже самое 0.07000000000000001 вместо ожидаемой 0.07

заранее спасибо.

DoubleToString()
 

Не могу запустить мт5 в режиме /portable на Win2008 server x64 R2

в лог попадает вот что

DO      2       14:25:17        Accounts        accounts base corrupted, file H:\MT5_Nord_0\config\accounts.dat deleted
EH      0       14:25:17        Terminal        stopped
IO      2       14:25:32        Accounts        accounts base corrupted, file H:\MT5_Nord_0\config\accounts.dat deleted
HH      0       14:25:32        Terminal        stopped
OO      2       14:26:08        Accounts        accounts base corrupted, file H:\MT5_Nord_0\config\accounts.dat deleted
QH      0       14:26:09        Terminal        stopped
RO      2       14:28:27        Accounts        accounts base corrupted, file H:\MT5_Nord_0\config\accounts.dat deleted
FH      0       14:28:28        Terminal        stopped
QO      2       14:39:26        Accounts        accounts base corrupted, file H:\MT5_Nord_0\config\accounts.dat deleted

Файл по указанному пути помог удалить файл руками

больше не пишет а только

OH      0       14:39:27        Terminal        stopped
ML      0       14:40:58        Terminal        stopped
EP      0       14:41:37        Terminal        stopped
CD      0       14:42:36        Terminal        stopped
KH      0       14:42:58        Terminal        stopped
NL      0       14:46:39        Terminal        stopped
HP      0       14:47:14        Terminal        stopped
LD      0       14:49:07        Terminal        stopped

достал из ....Roaming....

положил по указанному файлу - фишка не прокатила

если /portable убрать у ярлыка то терминал запускается

 
Портабл не гарантирует локальный запуск, а лишь означает "плюнь на все и попробуй запуститься локально, может повезет".
 
 Подскажите софт, онлайн-ресурс или MQL5-скрипт для просмотра рынков на таймфреймах более MN. Необходима аналогия с MT5: японские свечи и возможность регулировать толщину баров.
 
2013.09.07 02:39:36    iTester-SL (GBPUSD,M1)    1 object of type CTestStat left
2013.09.07 02:39:36    iTester-SL (GBPUSD,M1)    1 undeleted objects left

Утечка памяти.  //  или глюк компоновщика.

Объект был объявлен как статическая глобальная переменная. (!)  Т.е. вообще не динамический. 

Проблема появилась после выноса части кода, использующего данную переменную, в .mqh файл и объявления её в этом файле как extern (до этого никакой утечки не было):

extern CTestStat      Stat;

Программа при этом нормально работает.

// Для себя проблему обошёл объявив объект динамическим. Теперь создаю в OnInit(), в OnDeinit() удаляю.  Утечка (сообщения об утечке) прекратилась.

 
ARTIFEX:

Добрый день,

Я использую для NormalizeDouble лотов.

Однако, не все цифры округлены до двух знаков после запятой.

В чем проблема? / Решение?

NormalizeDouble (0.07000000000000001,2) / / выводит все же +0,07000000000000001 вместо ожидавшихся 0,07

Спасибо заранее.

Оно происходит от представления с плавающей числа.
Число с плавающей запятой — Википедия
  • ru.wikipedia.org
Число с плавающей запятой (или число с плавающей точкой) — форма представления действительных чисел, в которой число хранится в форме мантиссы и показателя степени. При этом число с плавающей запятой имеет фиксированную относительную точность и изменяющуюся абсолютную. Используемое наиболее часто представление утверждено в стандарте IEEE 754...
 
x100intraday:
 Подскажите софт, онлайн-ресурс или MQL5-скрипт для просмотра рынков на таймфреймах более MN. Необходима аналогия с MT5: японские свечи и возможность регулировать толщину баров.
 Понимаете. Отсутствие более высоких таймфреймов у меня в голове невольно приравнивается к подозрительному "разработчики чего-то недоговаривают..." У кого-то не так?
Причина обращения: