首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MQL4编程——枚举类型

问题引入

我们在程序中使用const或者#define定义整型常量,当整型常量有多个且之间的值全部或部分有递加的时候,定义起来稍显繁琐。

用const定义的常量:

const int鼠=1;

const int牛=2;

const int虎=3;

const int兔=4;

用#define定义的常量:

#define鼠1

#define牛2

#define虎3

#define兔4

在这种情况下,我们用枚举显得很简洁。

枚举定义

是一种派生数据类型,它是由用户定义的若干枚举常量的集合。

格式

enum {};

举例1

#property script_show_inputs //脚本拖入显示对话框

enum ShengXiao //定义一个生肖的枚举类型,鼠对应整数,后面一次类推

{鼠,牛,虎,兔,龙,蛇,马,羊,猴,鸡,狗,猪};

input ShengXiao选择=猪; //定义枚举变量“选择”,并赋初值“猪”

从执行结果可以看出当我们给“选择”赋了初值,在对话框中默认就是我们的初值。用枚举进行选择,可以和switch语句共同完成更复杂的操作。

举例2

#property script_show_inputs

enum ShengXiao{鼠,牛,虎,兔,龙,蛇,马,羊,猴,鸡,狗,猪};

input ShengXiao选择=猪;

void OnStart()

{

switch(选择)

{

case 0: Print("鼠年快乐"); break;

case 1: Print("牛年快乐"); break;

case 2: Print("虎年快乐"); break;

case 11: Print("猪年快乐"); break;

default: Print("你的选择是错误的"); break;

}

}

当我们选择猪年,对应的整数是11,switch语句里面找到11,输出“猪年快乐”。在我们后期的程序编写当中,比如做一个开关或者是K线形态下拉选择等等都可以用到枚举类型。

暗中观察

默默关注

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190218G05BHL00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券