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
相关产品推荐
相关产品推荐

