下载MetaTrader 5
MQL5参考数组函数ArrayCompare 

ArrayCompare

函数返回相同类型两个数组的比较结果。它可以用来比较简单类型或没有 复杂对象的自定义结构的数组,自定义结构不可以包括 字符串动态数组,类和其他没有复杂对象的结构。

int  ArrayCompare(
   const void&  array1[],            // 第一数组
   const void&  array2[],            // 第二数组
   uint         start1=0,            // 第一数组的初始偏差
   uint         start2=0,            // 第二数组的初始偏差
   uint         count=WHOLE_ARRAY    // 元素比较的数量
   );

参数

array1[]

[in]  第一数组。

array2[]

[in]  第二数组。

start1=0

[in]  第一数组的元素初始指数,比较的开始。默认开始指数 - 0。

start2=0

[in]  第二数组的元素初始指数,比较的开始。默认开始指数 - 0。

count=WHOLE_ARRAY

[in]  要比较的元素数量。两种数组的所有元素默认都参与比较 (count=WHOLE_ARRAY)。

返回值

  • -1, 如果 array1[] 小于 array2[]
  • 0, 如果 array1[] 等于 array2[]
  • 1, 如果 array1[] 大于 array2[]
  • -2, 如果由于比较的数组类型不一致而产生错误或如果start1, start2或计算值导致外数组降低。

注意

在数组忠于另一个数组的情况下,如果数组在大小和count=WHOLE_ARRAY不相同,那么函数不会返回0(数组将不会认为相等)。在这种情况下,比较数组大小的结果将返回: -1,如果array1[]大小小于array2[] 大小, 否则为1。


更新: 2015.12.03