首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CP - OPL分片输入数组

CP - OPL分片输入数组
EN

Stack Overflow用户
提问于 2018-06-30 22:19:44
回答 1查看 90关注 0票数 0

我想我需要一些关于OPL语言的帮助:/我的代码如下:

代码语言:javascript
复制
using CP;

int NbMchs = ...;
range Mchs = 0..NbMchs-1;

tuple Mode {
  int opId;
  int mch;
  int pt;
};

{Mode}      Modes = ...;

// Not Working...
int test[m in Mchs] =  all(md in Modes: md.mch == m) md.opId;

我想做的是从只包含元组的opId字段的Modes结构中提取m个一维数组。每个test[m]数组都必须包含其对应的元素:即元组md where md.mch =m的opId字段。

我从上面的代码中得到的错误是“不能将类型int[]用于整型”。上面函数的右侧似乎返回一个整数,但我认为all()运算符是我可以用来完成这项工作的运算符。

提前感谢

EN

回答 1

Stack Overflow用户

发布于 2018-08-01 17:17:32

在一般情况下,opId的数量取决于机器m,因此在这里您不能真正拥有一个二维数组。我将使用一个集合数组:

代码语言:javascript
复制
{int} test[m in Mchs] =  { md.opId | md in Modes: md.mch == m };

请注意,它假定每个opId只有一种模式,即mch。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51115762

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档