新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 791

 
ukrop1203:
没有,只有 "成功加载 "和 "删除"。

是的,看到了,试着加载你的代码,有一个堆栈溢出,由

2019.03.26 19:38:16.053 堆栈溢出

试着在OnStart()部分移动全局描述的变量 没有帮助,也许在代码的某个地方你有大量的数据,你需要了解你在做什么,而且代码写得不是很理想,我不能这么快的帮助


 

我在日志中忽略了这一点,我的脚本使用了大量的双数数组(3个864000的数组)。减少了10倍,都能用,我水平低不谙世事,告诉我这种东西需要抽什么铁才能用,就加内存吗?我当然不会为这个程序买特刊,我会改写,只是想知道。


 
ukrop1203:

我在日志中忽略了这一点,我的脚本使用了大量的双数数组(3个864000的数组)。减少了10倍,都能用,我水平低不谙世事,告诉我这种东西需要抽什么铁才能用,就加内存吗?我当然不会为这个程序买特刊,我会改写,只是想知道。


3 x 8 x 864000 = 20736000字节

这太多了,MT4是32位的,我不想搜索信息,但我认为32位程序有2GB的内存限制。

我的设备与此毫无关系。

ZS: 重新计算的20736000字节是20Mb,原则上不多,可能你有静态描述的数组,试着改成动态数 组,然后调整大小,也许会有帮助--我已经很久没有读过MT的内存是如何分配的,但是脚本因为堆栈溢出而崩溃了--在某处内存被保留了很多

 
如何通过new创建一个数组,使其被写入chem中?我只明白如何在字段中创建一个带有数组的类,但使用起来会很奇怪,在c++中是这样的:int *array = new int[n]; 在这里不起作用。
 
ukrop1203:
如何通过new创建一个数组,使其被写入chem中?我只明白如何在字段中创建一个带有数组的类,但使用起来会很奇怪,在c++中是这样的:int *array = new int[n]; 在这里不起作用。
double x[];
ArrayResize(x,1000);

https://docs.mql4.com/ru/array/arrayresize

ArrayResize - Операции с массивами - Справочник MQL4
ArrayResize - Операции с массивами - Справочник MQL4
  • docs.mql4.com
При успешном выполнении функция возвращает количество всех элементов, содержащихся в массиве после изменения размера; в противном случае возвращает -1 и массив не меняет размеры. Функция может быть применена только к динамическим массивам. При этом необходимо иметь ввиду, что нельзя изменять размер для динамических массивов, назначенных в...
 
你能告诉我如何在打印 点之后显示ASK价格的五个字符,而不是四个?
 
nkss2020:
你能告诉我如何在打印点之后显示ASK价格的五个字符,而不是四个?
Print("Ask: ",DoubleToString(Ask,5));
 
有一个日期,例如2019年3月26日,我们如何从这个日期计算3天,使2019年3月23日出现在评论 中?
 
ponochka:
比如说2019年3月26日,如何将其转换为3天,这样评论就会变成2019年3月23日?
日期-3*PeriodSeconds(PERIOD_D1)。
 
Alexey Viktorov:

是你花了24小时。

ZS,而你就是那个把自己删除的人...

原因: