错误、漏洞、问题 - 页 1969

 
Alexey Kozitsyn:
是的,我明白了...那我就再创建一个应用程序。

我对MT5的申请 - 2016.10.11 16:28,#1584315- 到目前为止已接受审查。;-)

 
Stanislav Korotky:

我对MT5的申请 - 2016.10.11 16:28,#1584315- 到目前为止已接受审查。;-)

BOD需要定期给申请者写信,让他们做出回应。有时他们会错过。
 
Alexey Kozitsyn:
这是我认为已经解决的问题,但现在却没有。刚刚检查过。图片1643。

这是建1650。看看吧。

 
Artyom Trishkin:

它已经建成了1650。看看吧。

好的,我刚刚命名了最新的官方版本。
 

最初,有几个模块。一切工作都很正常。由于... 决定暂时把所有东西都变成一个。
结果:程序开始以不同方式工作。
我发现了其中的原因。

#ifndef _WIN64 //добавлено
class A {
public:
        A() { Print( a ); } //Результат: 0 //не может быть
        static const int a; //(1)
}; 
static A *a = new A;    //(2)
const int A::a = 1;     //(3)
void OnStart() {}
#endif

我们无法准确地找出为什么会出现这种特殊的行序(通常在声明之后就会出现实施/初始化)。也许是相互交叉的阶级。

我不知道C++编译器到底是怎么做的,但结果是:1(如预期)。
 

错误,读取失败。

   ulong l[] = {ULONG_MAX};
   ulong l2[1];
   {
      int file = FileOpen("ttt", FILE_WRITE|FILE_BIN);
      FileWriteArray(file, l);
   }
   {
      int file = FileOpen("ttt", FILE_READ|FILE_BIN);
      FileReadArray(file, l2);
   }
   Alert(l[0] == l2[0]);
   Alert(l[0], "   ", l2[0]);
   return;

Alert:

假的

18446744073709551615 10000000

文件中数字的十六进制图像:FF FF FF FF FF FF FF FF FF FF FF

 
pavlick_:

错误,读数出现了故障。

不是阅读,而是数组初始化。删除大括号。

我很慢,我会仔细检查的。
 
Комбинатор:

不是读取,而是初始化数组。移除大括号。

没有它们,就根本无法编译('l'-无效的数组访问)。总之--文件中的数字是正确的。

 
我怀疑第一个句柄应该用FILE_SHARE_READ 标志来关闭或打开。
 
Комбинатор:
我怀疑第一个句柄应该用FILE_SHARE_READ 标记关闭或打开。

谢谢你的兴趣。我做到了。关闭了手柄,现在工作正常。在我的脚本中得到一个错误,试图将其本地化,到目前为止。