来自 "release block" 的任何逻辑更改变量整数

Anylogic from "release block" change variable integer

我创建了一个代理购物车,里面有 4 个变量。每个变量都是一个整数,其中一个称为红色,初始值为 4。

当我使用 seize/release 语句时,我想将整数更改为 -1。

在操作部分我尝试了“发布时”说 (Cart)unit.red 希望将变量从 4 更改为 3。它返回错误。 “red cannot be resolved or is not a field”以及“)”的语法错误,赋值运算符应在 (Cart)unit.red 中。写 (Cart)unit.variable 也不行。另一个子问题:是否可以从“发布”块中更改 class 中的两个变量? 编辑 Classpicture Overview

Seize Release

您需要将购物车分配给您的资源池才能使用它。 检查此图像:

之后你需要非常小心区分 Cart、cart 和 carts

  • 购物车是 class
  • 如果只有 1 个购物车并且您将其定义为单个代理,则购物车为代理
  • 购物车是代理人的数量

在您的情况下,如果您创建了一个名为 Cart 的资源类型,则只需要 class...检查与 non-capitalized 相比的大写字母。

好的,现在在你的抢占块中,你只能在抢占单元或准备单元上调用的操作中使用手推车。

如果你这样做 ((Cart)unit).red=3; 它会起作用,只要你理解前面的所有解释。

否则,您将需要提供更多关于您的模型的信息,包括您所做的一切的非常精确的图像。