ArrayCopyRates() также изменила свое поведение, раньше она производила виртуальное копирование в массив double[][6], теперь же производится виртуальное копирование в массив MqlRates[]. Для совместимости осталось копирование в массив double[][6], но это копирование не виртуальное, а реальное.
同事们,编译时弹出了一条警告信息。
可能使用未初始化的变量'PipStep'。
为这样的大块。
所有的变量都被初始化为双数,这有什么问题吗?
你声明了double类型的变量,初始化就是给声明的变量 赋值。
double PipStep=0 ; make
我不明白,难道只有我一个人无法测试555构建中的指标演示,还是这对市场首发来说根本不是一个重要问题?
他们是在5岁时进行测试吗?
ArrayCopyRates() также изменила свое поведение, раньше она производила виртуальное копирование в массив double[][6], теперь же производится виртуальное копирование в массив MqlRates[]. Для совместимости осталось копирование в массив double[][6], но это копирование не виртуальное, а реальное.
https://www.mql5.com/ru/forum/148325
用于存储价格、成交量和价差信息的结构。
https://www.mql5.com/ru/docs/constants/structures/mqlrates
MetaTrader 4中的MqlRates是建立在555个数组还是结构中?
这个来自帮助(MetaTrader 4 build 555)的例子不起作用,因为没有函数 CopyRates
他们会在5分钟内测试吗?
有些人也不在5岁时测试吗?
你声明了double类型的变量,初始化是对声明的变量进行赋值。
double PipStep=0 ; do
它成功了!!!。
活到老,学到老!
非常感谢您!
MetaTrader 4中的MqlRates是建立在555个数组还是结构中?
这个来自帮助(MetaTrader 4 build 555)的例子不起作用,因为没有函数 CopyRates
这也不行,我们能在MetaTrader 4 build 555中看到一个使用MqlRates的工作实例吗?MqlRates- 结构
MqlRates[] - 数组结构
要看一个使用MqlRates结构的例子,请看脚本period_converter_new
ArrayCopyRates操作的一个例子(文档将被更新)。
MQL4中的变化
我有相当数量的专家顾问使用DLLs,它们在很久以前就已经传给了客户。我们使用数组 double[][6] 来向DLL传递参数 ,这些参数在初始化过程中 被ArrayCopyRates()虚拟复制 进去 了。然后当从DLL调用函数时,这些数组和它们的当前大小被作为参数通过引用传递。
事实证明,当终端更新到一个新的版本时,所有这些EA将停止工作。这是很不幸的。
我是否正确地理解,为了在不改变DLL代码的情况下保持它们的工作,我们现在应该在每次调用DLL中的一个函数之前调用ArrayCopyRates()?
我有相当数量的使用DLL的EA,这些EA在很久以前就已经移交给了客户。为了向DLL传递参数,我们使用了数组 double[][6],在初始化 ArrayCopyRates() 函数中对 时间序列进行了虚拟复制。然后,当从DLL调用函数时,这些数组和它们的当前大小被作为参数通过引用传递。
事实证明,当终端更新到一个新的版本时,所有这些EA将停止工作。这是很不幸的。
我是否正确地理解,为了在不改变DLL代码的情况下保持它们的工作,我们应该在每次从DLL调用一个函数之前调用ArrayCopyRates()?
比这更复杂一点。dll所采取的结构也发生了变化。
所以,你需要将ArrayCopyRates改写成MqlRates 结构数组。另外,在你的dll中,你需要替换相应结构的描述