该pragma可应用于本地 STRING 变量,并使该本地 STRING 变量按其所属 POU 的设备树路径顺序初始化。这对错误信息很有用。应用该pragma要求对相关
POU 应用属性'reflection'
,并对 STRING 变量应用附加属性'noinit'
。
语法 :
{attribute 'instance-path'}
插入位置:声明STRING
变量的那一行的上方。
示例
以下功能块包含属性'reflection'
、'instance-path'
和'noinit'
。
{attribute 'reflection'} FUNCTION_BLOCK POU VAR {attribute 'instance-path'} {attribute 'noinit'} str: STRING; END_VAR
在主程序“PLC_PRG”中定义了功能块“POU” 的实例“myPOU”:
PROGRAM PLC_PRG VAR myPOU:POU; myString: STRING; END_VAR myPOU(); myString:=myPOU.str;
在实例myPOU
初始化后,实例 myPOU 的路径被分配给字符串变量str
,示例中为PLCWinNT.Application.PLC_PRG.myPOU
。主程序会将该路径分配给变量myString
。




注意

您可以随意定义字符串的长度(甚至可以大于 255),但必须考虑到,如果将字符串赋值给数据类型太小的变量,字符串末尾将被截断。