Skip to content

注释 标识符 保留字

MQL5编程语言的三大基础语法:注释标识符保留字。这三个知识点是编写EA的基石,需熟练掌握。

一、注释

作用:在代码中添加说明性文字,帮助程序员理解逻辑,不影响程序执行。
分类

  1. 单行注释:以//开头,仅作用于当前行。
    cpp
    // 这是单行注释,解释变量初始化  
    int myVariable = 10;
  2. 多行注释:以/*开头,*/结尾,可跨越多行。
    cpp
    /*  
    这是多行注释  
    可用于解释复杂逻辑或函数功能  
    */  
    void MyFunction()  
    {  
        // 函数内部代码  
    }

最佳实践

  • 量化EA代码量较小,可选择性添加注释;
  • 工程性项目必须详细注释,避免后期难以维护;
  • 注释需简洁明了,避免冗余。

二、标识符

定义:用于给变量、函数、类等命名的符号。
命名规则

  1. 允许字符
    • 字母(A-Z、a-z)
    • 数字(0-9)
    • 下划线(_
  2. 禁止规则
    • 不能以数字开头(如1name非法,name1合法);
    • 区分大小写(MyVariablemyVariable是不同标识符);
    • 不能与保留字冲突。
  3. 示例
    cpp
    // 合法标识符  
    string myString;  
    int age_18;  
    double TotalProfit;

常见命名习惯

  • 驼峰命名法(推荐):camelCase
  • 下划线命名法snake_case
  • 匈牙利命名法(可选):iCounter(前缀表示类型)

三、保留字

定义:MQL5语言预定义的具有特殊含义的单词,禁止作为标识符使用。
分类与示例

  1. 数据类型boolfloatintstringdatetime等。
  2. 运算符与控制结构ifelseforwhilebreakreturn等。
  3. 访问修饰符privateprotectedpublic
  4. 特殊关键字truefalsethistemplate
  5. 预处理指令#define#include#ifdef

完整保留字列表(参考):

cpp
// 数据类型  
bool, float, int, string, datetime, double, struct, enum  
// 运算符与控制结构  
if, else, for, while, break, continue, return, switch, case  
// 访问修饰符  
private, protected, public  
// 特殊关键字  
true, false, this, template  
// 预处理指令  
#define, #include, #ifdef, #ifndef, #endif

快速区分方法

  • 颜色识别:在MetaEditor中,保留字默认显示为蓝色,标识符为黑色
  • 编译错误:若使用保留字命名,编译时会报错:'int' : identifier is reserved

四、实战案例与注意事项

  1. 错误示例
    cpp
    int int = 10;  // 错误:int是保留字  
    string String = "Hello";  // 错误:String是保留字(MQL5中string小写)
  2. 正确示例
    cpp
    int myInt = 10;  
    string myString = "Hello";
  3. 颜色验证
    • 打开MetaEditor,输入保留字(如int),观察其颜色是否为蓝色;
    • 输入自定义标识符(如myVariable),颜色应为黑色。