数组函数在严格模式下的使用
Array function use on strict mode
我无法使用这些数组函数来在 MQL4 严格模式下使用它。
谁能提示我应该从哪里开始?目的是让它可以在严格模式下工作。
int Trigger;
void function6(int &arrays[50])
{
int vals = ArraySize(arrays);
int trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
while(trailingstop > Trigger)
{
arrays[function5(arrays) - 1] = 0;
trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
if(function5(arrays) < 2)
break;
}
}
int function5(int &arrays[50])
{
int vals = ArraySize(arrays);
for(int k = 0; k < vals; k++)
if(!(arrays[k] > 0))
return (k);
return (vals - 1);
}
void function4(double &val[50])
{
int vald = ArraySize(val);
for(int l = vald; l > 0; l--)
val[l] = val[l - 1];
val[0] = 0;
}
void function3(int &arrays[50])
{
int vald = ArraySize(arrays);
for(int l = vald; l > 0; l--)
arrays[l] = arrays[l - 1];
arrays[0] = 0;
}
数组从 0 开始,而不是 1。当使用 ArraySize 定义数组的计数时,您应该始终减去 1 以说明从 0 开始。
void function6(int &arrays[50])
{
int vals = ArraySize(arrays)-1;
int trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
while(trailingstop > Trigger)
{
arrays[function5(arrays) - 1] = 0;
trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
if(function5(arrays) < 2) break;
}
}
int function5(int &arrays[50])
{
int vals = ArraySize(arrays)-1;
for(int k = 0; k < vals; k++)
if(!(arrays[k] > 0)) return (k);
return (vals - 1);
}
void function4(double &val[50])
{
int vald = ArraySize(val)-1;
for(int l = vald; l > 0; l--)
val[l] = val[l - 1];
val[0] = 0;
}
void function3(int &arrays[50])
{
int vald = ArraySize(arrays)-1;
for(int l = vald; l > 0; l--) arrays[l] = arrays[l - 1];
arrays[0] = 0;
}
我无法使用这些数组函数来在 MQL4 严格模式下使用它。 谁能提示我应该从哪里开始?目的是让它可以在严格模式下工作。
int Trigger;
void function6(int &arrays[50])
{
int vals = ArraySize(arrays);
int trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
while(trailingstop > Trigger)
{
arrays[function5(arrays) - 1] = 0;
trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
if(function5(arrays) < 2)
break;
}
}
int function5(int &arrays[50])
{
int vals = ArraySize(arrays);
for(int k = 0; k < vals; k++)
if(!(arrays[k] > 0))
return (k);
return (vals - 1);
}
void function4(double &val[50])
{
int vald = ArraySize(val);
for(int l = vald; l > 0; l--)
val[l] = val[l - 1];
val[0] = 0;
}
void function3(int &arrays[50])
{
int vald = ArraySize(arrays);
for(int l = vald; l > 0; l--)
arrays[l] = arrays[l - 1];
arrays[0] = 0;
}
数组从 0 开始,而不是 1。当使用 ArraySize 定义数组的计数时,您应该始终减去 1 以说明从 0 开始。
void function6(int &arrays[50])
{
int vals = ArraySize(arrays)-1;
int trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
while(trailingstop > Trigger)
{
arrays[function5(arrays) - 1] = 0;
trailingstop = TimeCurrent() - (arrays[function5(arrays) - 1]);
if(function5(arrays) < 2) break;
}
}
int function5(int &arrays[50])
{
int vals = ArraySize(arrays)-1;
for(int k = 0; k < vals; k++)
if(!(arrays[k] > 0)) return (k);
return (vals - 1);
}
void function4(double &val[50])
{
int vald = ArraySize(val)-1;
for(int l = vald; l > 0; l--)
val[l] = val[l - 1];
val[0] = 0;
}
void function3(int &arrays[50])
{
int vald = ArraySize(arrays)-1;
for(int l = vald; l > 0; l--) arrays[l] = arrays[l - 1];
arrays[0] = 0;
}