else{// Иначе стрелка создана. Задаём её свойстваObjectSetInteger(ChartID(),Open_name,OBJPROP_ARROWCODE,OpenArrowCode);//код стрелки 232 // или 0 вместо ChartID() для текущего графика ObjectSet(Open_name,OBJPROP_COLOR,ObjColor);//цвет стрелки
}
В платформу встроена система автоматического обновления. Она позволяет своевременно получать и устанавливать новые версии программы. Эту систему отключить нельзя. Порядок обновления При подключении к торговому серверу происходит проверка наличия обновлений платформы. Если найдено обновление какого-либо из компонентов торговой платформы...
mql4指标中的代码停止工作了。我怎样才能修复它?
编辑器说'ObjectSetInteger'--没有一个重载可以应用于函数调用
它已经工作了多年,然后突然停止。不过,这很可惜。
但你为什么要把两种风格混为一谈呢?如果你用第一行来指定箭头代码,那么就用第二行来指定相同的风格。
试图向市场上传新版本的指标。 测试以错误结束。错误报告如附录中的图片,内容如下。
也许问题出在测试器上?只是你为什么要把这两种风格混在一起?如果你用第一行来设置箭头代码,那么就用第二行来设置同样的风格。
谢谢你,这很有帮助。
两种风格?我不知道这些风格。只是以前你只能以这种方式做这一部分。已经有了变化。我使用MQL4编程已经超过10年了。而现在开发者改变了语言,我的许多代码不再工作了。我非常失望。这些变化并不是为了更好的发展。这意味着我必须重做大量的代码。尽管它们是旧的,但它们被大量使用。
试图向市场上传新版本的指标。 测试以错误结束。如附录中图片所示的错误报告,内容如下。
也许问题出在测试器上?请向servicedesk提出请求,我们会解决这个问题。
UPD: 找到了你的请求。
释放任何动态数组的缓冲区,并将零维的大小设为0。
当编写脚本和指标时,可能很少需要使用ArrayFree()函数,因为所有使用过的内存都会被立即释放,在自定义指标 中,对数组的主要工作表现为对指标缓冲区的访问,其大小由终端的执行子系统自动管理。
如果你在程序中需要在复杂的动态条件下管理内存,ArrayFree()函数将允许你明确地立即释放不再需要的动态数组所占用的内存。
你看到了吗?没有必要。
自然,一旦内存被释放出来,然后你通过给数组分配一个大小来再次分配它,没有人能够保证它的内容。
使用数组初始化:ArrayInitialize()
你是什么意思,没有人保证内容?如果记忆被释放了,它就消失了,那么你怎么能把垃圾放进去呢?还是说清除内存意味着允许该内存被程序的另一部分使用,而不是真正的清除?
你说没有人保证内容是什么意思?如果记忆已经被清除,它就不再存在,那么它怎么会有垃圾在里面呢?还是说清除内存意味着允许该内存被程序的另一部分使用,而不是真正的清除?
ArrayResize没有清理内存,这就是为什么它包含垃圾,来自之前的 "消费者"。
这样做是为了提高速度,因为在为数组分配内存 后,在99.99(9)%的情况下,用户会用他的数据来 "填充 "它。
谢谢你,这很有帮助。
两种风格?我不知道这些风格。只是以前你只能以这种方式做这一部分。已经有了变化。我使用MQL4编程已经超过10年了。而现在开发者改变了语言,我的许多代码不再工作了。我非常失望。这些变化并不是为了更好的发展。这意味着我必须重做大量的代码。它们可能是旧的,但它们有一整车的用途。
在mql4 ObjectSetXXX-function被引入之前,箭头代码不就是这样设置的吗?
我也用mql写了大约10年(也许更久--时间过得真快......)--我开始忘记严格意义上的四元函数--我尽可能地写多平台代码。
ArrayResize并没有清除内存,这就是为什么它包含了前一个 "消费者 "的垃圾。
这样做是为了提高速度,因为在向数组分配内存 后,在99.99(9)%的情况下,用户会用他的数据来 "填充 "它。
那么为什么数值是 "垃圾 "常量,甚至在重启终端后也是如此?
就我个人而言,我被简单地将另一个数组中的单元格内容相加所困扰,我为这个问题困惑了很久。
那么为什么数值是 "垃圾 "常量,甚至在重启终端后也是如此?
就我个人而言,我在对另一个数组的单元格内容进行简单求和时被烧伤了,我想了很久都不知道哪里出了问题。
未初始化的数组中包含什么样的数据并不重要,在任何时候,数据都可能发生变化,没有人保证其价值。
这就是为什么使用未初始化的变量(读取内存)有时会导致需要很长时间才能找到原因的情况。
我只能给出一些建议。
你应该养成总是初始化数据的习惯,这样将来你就不会浪费大量的时间去寻找与缺乏初始化有关的错误。
你说没有人保证内容是什么意思?如果记忆已经被清除,它就不再存在,那么它怎么会有垃圾在里面呢?还是说清除内存意味着允许该内存被程序的另一部分使用,而不是真正的清除?
你说 "不 "是什么意思?你不从主板插槽中取出内存条。而如果内存存在并被释放(不是用一个值初始化,而是被释放),那么它就被用于其他程序的需要。