Skip to main content

SA0044:关于接口的声明

检测声明 REFERENCE TO 接口和声明 VAR_IN_OUT 带接口的变量(通过 REFERENCE TO)

理由:接口类型总是隐含地引用实现该接口的功能块实例。因此,对接口的引用就是对引用的引用,并且可能导致不需要的行为。

重要性:高

53. 例子

ITF 是在项目中定义的接口。

FUNCTION_BLOCK POU
VAR_INPUT
    inst_itf2 : ITF;
END_VAR
VAR_OUTPUT
    inst_itf3 : ITF;
END_VAR
VAR_IN_OUT
    inst_itf4 : ITF;                // SA0044
END_VAR
PROGRAM PLC_PRG
VAR
    inst : POU;
    itf_inst1 : ITF;
    itf_ref : REFERENCE TO ITF; // SA0044
END_VAR

输出在 留言 看法:

  • sa_icon_message.png SA0044:对接口“itf4_ref”的引用

  • sa_icon_message.png SA0044:对接口“itf_ref”的引用