下载MetaTrader 5

形式参数

通过函数的变量是局部的。范围是在作用块内。在作用之内正式变量的名称必须不同于其他外部定义变量和函数变量。作用块内的正式变量值已经被赋予。如果正式参数以常量修饰符声明,其值在函数中不能改变。

示例:

void func(const int x[], double y, bool z)
  {
   if(y>0.0 && !z)
      Print(x[0]);
   ...
  }

正式参量可能由常数初始化。在这种情况下, 初始化的值作为缺省值被考虑。参量, 在初始化旁边, 必须初始化。

示例:

void func(int x, double y = 0.0, bool z = true)
  {
   ...
  }

这样作用显现时, 初始化的参量可能被省去, 缺省值会代替它们。

示例:

func(1230.5);

简易类型参量值通过。在任何情况下,这种局部变量的修改将不会显示在功能板块内。任何数组和结构类型数据都是通过引用传送。如果需要禁止修改数组和结构内容,这些类型参数必须用关键字 const 声明。

有机会通过引用传送简单类型参数。在这种情况下, 修改的这样参量将影响调用函数对应的变量。 为指出引用传送参数,数据类型后放符号&。

示例:

void func(int& x, double& y, double& z[])
  {
   double calculated_tp;
   ...
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(i==ArraySize(z))       break;
      if(OrderSelect(i)==falsebreak;
      z[i]=OrderOpenPrice();
     }
   x=i;
   y=calculated_tp;
  }

引用传送的参量无法通过默认值初始化。

传到函数的最大参量不可以超过64个。

另见

输入变量数据类型类型密封和扩展变量初始化可见范围和变量使用期创建和删除对象


更新: 2015.12.03