错误、漏洞、问题 - 页 1059

 

解释一下为什么在全局声明CCanvas 类的 实例时,编译器会发誓 - 未解决的静态变量 '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 类的实例时,编译器会发誓 - 未解决的静态变量 '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()
 

不能在Win2008服务器x64 R2上以/portable模式运行mt5

出现日志

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个CTestStat类型的对象离开。
2013.09.07 02:39:36 iTester-SL (GBPUSD,M1) 剩下1个未删除的对象

内存泄漏 // 或编译器故障。

该对象已被声明为一个静态全局变量。(!)也就是说,它根本就不是动态的。

在使用该变量的那部分代码被移到.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 的类比:日本蜡烛图和调整柱状物厚度的能力。
你看。在我的脑海中,缺乏更高的时间框架,不由自主地等同于怀疑"开发商没有告诉我什么"。"别人不也是这样吗?