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

MQL4代码编译提示too many initializers报错的原因是什么

问题根源

你声明的数组长度和初始化的元素数量不匹配:

  • 代码中string op_str[5]显式指定了数组长度为5
  • 但后面初始化列表里一共放了6个字符串常量,超出了数组声明的容量,编译器就会抛出too many initializers(初始化器过多)的错误

修复方案

方案1:修改数组声明的长度匹配元素数量

把数组长度调整为6即可:

string op_str[6] = {"BUY","SELL","BUYLIMIT","SELLLIMIT","BUYSTOP","SELLSTOP"};

方案2:省略显式长度声明,让编译器自动计算

如果不想手动统计元素个数,可以直接省略方括号里的长度值,编译器会自动根据初始化列表的元素数量确定数组长度:

string op_str[] = {"BUY","SELL","BUYLIMIT","SELLLIMIT","BUYSTOP","SELLSTOP"};

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 19:15:03