Skip to main content

编译器错误 C0186

信息: 无法比较调用返回值的接口。先赋值给变量。

可能的错误原因:比较操作应用于函数返回的接口。

错误修正:首先将函数调用的结果赋值给一个变量,然后比较变量的值。这也将减少所需的函数调用次数。

420. 错误示例:
INTERFACE MyInterface

FUNCTION GetInterface : MyInterface

PROGRAM PLC_PRG
IF GetInterface() <> 0 THEN
    // ...
END_IF

信息:

C0186: 无法比较作为调用返回值的接口。先赋值给变量。

错误修正:

PROGRAM PLC_PRG
VAR_TEMP
    tempInterface : MyInterface;
END_VAR
tempInterface := GetInterface();
IF tempInterface <> 0 THEN
    // ...
END_IF