EA编程教程第八讲 变量(2)

阅读 :
欢迎访问 外 汇 邦 WWW.WaiHuiBang.com

1 本地变量:

定义在函数内部的变量称为本地变量,它的作用范围只有在定义它的函数内可以访问,在函数外面的代码,不能访问函数里面的变量。例如:

int funcname(int a)

{

int abc; //函数内部的变量,只能由函数里面的代码访问,函数外部不能访问变量abc;

}

2 函数参数:

函数参数的各个变量名称不能函数内部变量重名。参数也可以指定默认值,例如:

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

{

...

}

这个函数指定了y的默认值为0.0,z的值为true。

调用这个函数的时候,可以不指定有默认值的参数值。如func(9), 则相当于 func(9, 0.0, true)这样调用。如果调用了func(9, 1.5) 则相当于调用了 func(9, 1.5, true).

一般情况下,函数参数是传值。在函数里面改变参数的值,不会变化到调用该函数的程序块。即使是数组也是传值进去。

那么我们如何传引用呢?通过传引用,如果函数里面的参数值改变了,对应的调用该函数的代码段的变量值会跟着改变。如果要传引用,则需要在函数参数类型后面添加符号 '&',如:

void func(int& x, double& y, double& z[])

{

x = 8;

}

有一点需要注意:如果是传引用的函数参数,不能对参数进行预设置默认值。

参数参数不能超过64个。

3 全局变量:

全局变量是与函数同级别的变量,它的作用域是整个MQL代码。也就是说整个MQL各个地方都能访问到全局变量。如:

int a = 10;

int funca()

{

Print(a); //可访问到全局变量a

return (0);

}

int funcb()

{

Print(a); //可访问到全局变量a

return (1);

}

4 外部变量:

如果一个变量被定义为外部变量,则EA客户端可以设置这个外部变量的值。

例如:

extern int a = 10;

extern color c = red;

欢迎访问 外 汇 邦 WWW.WaiHuiBang.com
本文标题:EA编程教程第八讲 变量(2) - MT4平台MQL4编程学习
本文地址:http://www.ea666.cn/fxschool/autotrading/mql4/40738.html

相关文章

  • 经典外汇马丁EA研究分析:依兰 Ilan-TrioKS EA
    经典外汇马丁EA研究分析:依兰 Ilan-TrioKS EA

    依兰 Ilan-TrioKS 在网上有源码流传快要十年了,也是网上经典马丁EA之一。EA 本身的界面看起来就是专业的美工设计。源码因为多次修改而有三个并存模块,代码行数近三千行。用 EURUSD M5 随便复盘测试过去三四个月,可以看...

    MQL4编程学习
  • MT4编程中的交易类型

    交易类型ConstantValueDescriptionOP_BUY 0 Buying position. OP_SELL 1 Selling position. OP_BUYLIMIT 2 Buy limit pending position. OP_SELLLIMIT 3 Sell limit pendin...

    MQL4编程学习
  • 外汇自动交易系统堪比交易员

    “当时有个朋友把我研发的一个自动交易系统卖给一家基金公司,居然卖了25万美元,那家公司专门收购各种交易系统进行测试和二次开发,并根据其结果和系统的特性投入不同比例的资金操作,有点像‘基金的基金’(FOF)那种操作模式。”...

    MQL4编程学习
  • 什么是EA(智能交易系统)?

      什么是外汇EA EA,中文全名叫智能交易系统,是通过电脑模拟人为操作来完成交易。交易员通过将交易思路进行编程,从而使电脑按照交易员的交易思路进 行无心态干扰的交易过程。 为什么要使用EA?EA使用的好处在哪里?...

    MQL4编程学习
  • MQL4客户端全局变量

    这里的 客户端全局变量 不要与MQL4程序中定义的 全局变量 混淆。最后访问的 "客户端全局变量" 可以在客户端内保存4个星期,然后将自动删除。对于 "客户端全局变量" 的访问不仅仅是新值的设定,也可以对其进行...

    MQL4编程学习
你可能感兴趣