属性:call_after_init
重要
VAR_INPUT
使用此属性的函数或方法中的声明会导致编译错误。原因:在这种情况下,调用时输入变量是未知的,这在在线更改期间隐式发生。
注意
编译器版本 3.4.1.0 支持此功能。
此 pragma 的效果是在功能块实例初始化后隐式调用方法。出于性能原因,您必须在声明部分上方的第一行中将属性添加到功能块和方法中。
具有此 pragma 的方法在 FB_Init
方法和初始化表达式的变量值在实例声明中有效之后。
句法:
{attribute 'call_after_init'}
调用:方法和功能块声明部分上方的第一行
例 257. 例子
定义
{attribute 'call_after_init'} FUNCTION_BLOCK FB_DoIt ... <functionblock definition> {attribute 'call_after_init'} METHOD FB_AfterInit ... <method definition>
该声明在后续代码处理中实现如下声明:
fbDoIt : FB_DoIt := (in1 := 99);
代码处理
fbDoIt.FB_Init(); fbDoIt.in1 := 99; fbDoIt.FB_AfterInit();
这允许对用户定义的初始化做出反应 FB_AfterInit
.