mql5 - MQL5 多变量数组结构
问题描述
如何在 MQL5 上创建一个可以容纳 3 个变量的数组以及如何填充它以及如何调用它?请看图片 https://i.imgur.com/VyjmwNW.jpg [![array][1]][1]
在 nicholishen 回答之后,当我尝试使用变量初始化数组时,我得到以下错误:'hi' -需要常量表达式22.mq5 16 18
void OnStart()
{
struct MyData { string name; double price; int volume; };
// initializing an array of structs
double hi= 0.01;
MyData arr[] = {
{"USDJPY", hi, 200},
{"USDJPY", 110.100, 300},
{"USDJPY", 110.200, 400},
};
}
解决方案
我相信你正在寻找的是一个结构数组。结构是可以保存不同类型数据的对象。这是您可以在终端中运行的示例。
void OnStart()
{
struct MyData { string name; double price; int volume; };
// initializing an array of structs
MyData arr[] = {
{"USDJPY", 110.000, 200},
{"USDJPY", 110.100, 300},
{"USDJPY", 110.200, 400},
};
// changing some values
arr[1].name = "EURUSD";
arr[1].price = 1.12;
arr[1].volume = 1000;
for (int i=0; i<ArraySize(arr); i++)
printf(
"Symbol=%s, price=%.3f, vol=%d",
arr[i].name,
arr[i].price,
arr[i].volume
);
}
推荐阅读
- javascript - 如何使用正则表达式拆分元标记字符串?
- web-scraping - 当设置tor获取轮换IP时,即使IP尚未改变,网页的“登录”也会中断
- python - AWS Lambda:一次执行的变量值被保留并供后续运行使用
- c++ - c++ 使用 recvmmsg 丢弃 udp 数据包
- javascript - 如何定义正则表达式以从价格字符串中提取货币符号?
- sql - SQL Server 2016 AdventureWorks NULL 检查
- reactjs - 有没有办法在 CEF Windows Chromium 桌面应用程序中避免 X-Frame-Options?
- c# - 在预构建中生成代码的问题
- javascript - gulp-single-file-component 包不会创建正确的模板输出。哪个 gulp 包实际上可以正确编译我的 .vue 组件?
- excel - 使用数据透视表计算类别的聚合值的中位数