手机版

外汇EA编程教程——变量

阅读 :
外_汇_邦 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;

外_汇_邦 WaiHuiBang.com
本文标题:外汇EA编程教程——变量 - MT4平台MQL4编程学习
本文地址:https://www.waihuibang.com/fxschool/autotrading/mql4/40658.html

相关文章

  • 说说外汇ea中常用的资金管理策略

    1.中性策略(Neutral strtegy,NT)现在测试EA都要求使用0.1手固定手数,不得启用复利模式,以检视EA的性能。 用于提供与其他EA比较的基准。2.马丁格尔法(Martingale,MG)在每次赔钱后,将赌注加倍,而在任何一次...

    MQL4编程学习
  • 怎样选择最适合的外汇VPS,使交易延迟降到最低?

    很多挂EA的选择离MT4服务器地址相近的国家线路的VPS才能更流畅的交易,比如你的交易商的MT4服务器在美国,那么购买美国的VPS,这样就在网络连通率和速度上比国内更快一步了。...

    MQL4编程学习
  • MT4平台常识

    一、 MetaTrader 4 安装使用指南 1、下载安装后首先设置您的软件为中文——在View项中有Languages,可选择Simplified Chinese(简体中文); 2、在文件一项中,找到创建新账号,点击“创建新账号”,就会弹出注册表...

    MQL4编程学习
  • mq4文件和ex4文件的区别

    一、MT4自定义指标保存在C:/Program Files/MetaTrader 4/experts/indicators这个目录中,该目录中主要有二种类型的文件,mq4文件和ex4文件。mq4文件是MT4自定义指标的源码文件,是一种高级语言文件,可以人工编写修改,机器...

    MQL4编程学习
  • 外汇EA编程教程――预处理程序

      预处理程序是MQL编译器的一个子系统,通过预处理程序可以使软件的可读性更好,预处理程序运行在程序编译之前。预处理指令以(#)开头。 1 定义常量使用#define来定义常量。如: 1. #define ABC 100 2. #define PI 0...

    MQL4编程学习
你可能感兴趣