Skip to main content

SA0034:分配不正确的枚举

检测分配给枚举变量的值。仅允许分配枚举变量的已定义枚举常量。

理由:枚举类型的变量应该只具有预期的值,否则使用该变量的代码可能无法正常工作。我们建议始终将枚举与 pragma 一起使用 {attribute 'strict'}。然后编译器已经检查了枚举组件的正确使用。

重要性:高

46. 例子
TYPE COLOR :
(
        Red := 0,
        Green,
        Yellow
);
END_TYPE
PROGRAM PLC_PRG
VAR
    eColor1: COLOR;
END_VAR
eColor1 := COLOR.Red;
eColor1 := 1;    // SA0034

输出在 留言 看法:

  • sa_icon_message.png SA0034:使用枚举值而不是“INT#1”



有关更多信息,请参阅: