我正在尝试在 MotionWorks 中添加我自己的枚举。创建新数据类型后,唯一可用的类型是 ARRAY、STRING、STRUCT。
编写以下代码:
TYPE SimulationType:
(
Passing := 0,
Random := 1,
Failing := 2
) INT := 0;
END_TYPE
不编译。Yaskawa 似乎遵守 ENUM (根据此列表),但我不知道如何声明它。
编辑:我可以执行以下操作:
TYPE
ResultType:(Pass, Random, Fail);
END_TYPE
但它似乎没有创建一个枚举,因为我无法访问它的价值。我可以像访问结构一样访问它。
编辑2:
如果我声明:
TYPE
ResultType:(Pass, Random, Fail);
END_TYPE
并设置变量
ExpectedResultType : ResultType;
然后在我尝试使用的代码中:
IF ExpectedResultType = ResultType.Pass THEN
Done := TRUE;
END_IF;
它编译,但不会运行。
尝试使用此代码将无法编译:
CASE ExpectedResultType OF
ResultType.Pass:
Done := TRUE;
Error := FALSE;
ResultType.Random:
Done := TRUE;
ResultType.Fail:
Error := TRUE;
Done := FALSE;
END_CASE;