You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MQL5中如何使用#import而非#include导入自定义枚举文件

实现方案

要使用#import指令完成枚举文件的导入,按以下方式修改三个文件即可:

1. 保持枚举文件enum.ex5不变

枚举定义无需调整,原内容保留:

enum ENUM_VALUE
{
   VAL_1,
   VAL_2,
   VAL_3,
};

2. 修改中间库文件middle.ex5

在文件开头用#import导入枚举文件,确保编译时能识别ENUM_VALUE类型:

#import "enum.ex5"
#property library

ENUM_VALUE test (bool access) export
{
   if (access == true)
      return VAL_1;
   else if (access == false)
      return VAL_2;

   return VAL_3;
}

3. 调整调用文件last.ex5

根据需求选择导入方式:

仅调用test函数时

仅导入中间库即可,中间库已包含枚举定义:

#import "middle.ex5"
   ENUM_VALUE test (bool access);
#import

需要直接使用枚举值(如VAL_1)时

额外导入枚举文件:

#import "enum.ex5"
#import "middle.ex5"
   ENUM_VALUE test (bool access);
#import

关键说明

  • #import会自动处理重复导入问题,无需手动添加头文件保护(如#ifndef)
  • 确保文件路径正确,若枚举文件不在当前目录,需填写完整相对路径或绝对路径

内容的提问来源于stack exchange,提问作者Sadegh Molaei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 00:54:59