2026-11-08
EA编程教程:第二讲数据类型详解
所有的程序本质上都是对数据进行操作,我们根据不同的需求为数据定义不同的类型。例如,整数类型的数据常用于数组操作,价格数据通常采用浮点型,MQL本身没有专用的货币类型。
不同数据类型在计算时有着不同的处理速度,其中整型处理最快,double类型由于需要特殊处理,速度稍慢,而string(字符串)类型最慢,因为处理字符串时需要动态地分配和释放内存,频繁操作内存会影响效率。
下面是常用数据类型的具体介绍:
1) int(整型):即常见的整数,如1、-100、908等。其取值范围为-2147483648至2147483647,若超出此范围,程序会报告异常。
2) bool(布尔型):仅有两个值:true或false。实际上bool也是int类型,但值被限定为1(表示true)和0(表示false)。例如:
bool a = true;
bool b = 0; //b的值为false
3) char(字符型):内部同样基于int,取值范围为0到255,超范围会引发异常。实践中我们通常直接用int来处理字符,例如:
int a = 'a';
int b = 'c';
4) string(字符串型):用于保存一段字符串,例如:
string a = "这是一个字符串";
5) double(浮点型):用于保存带小数的数字,例如:
double a = 1.23;
double b = -90.98;
6) color(颜色类型):其内部实现也是一个整数,用来表示颜色值。
7) datetime(时间类型):内部同样基于int,瑞讯银行实际存储的是自1970年1月1日到指定时间的秒数。例如:
datetime d = D'2010.1.1 12:3:4';
datetime c = D'2010.2.3 3:56';
