发布于 2013-10-17 07:25:25
10楼
数据类型ANY是任意的数据类型吗?
数据类型ANY的名称ANY很有意思,从所周知,ANY这个单词可翻译为“任意”的,它的实参可以是任意的数据类型!在调用逻辑块时,参数类型ANY用于将任意的数据类型传递给声明的形参。ANY可用于实参的数据类型未知,或实参可以使用任意数据类型的情况。
我们来做一个实验,在FC中定义一个数据类型为ANY的输入参数IN1。在OB1中调用FC1,分别设置IN1的实参为M0.2(位)、MB0、MW0、MD0、DB1.DBW0等各种长度的地址,或数据块中的各类地址,都是允许的。ANY的实参也可以是一片连续的地址区,例如P#DB1.DBX0.0 INT 50(DB1中从DW0开始的50个整数)。
数据类型ANY为了定义一片地址区,占用了10个字节,因此ANY最合理的用法还是用来定义地址区。如果用于单独的地址,那就大材小用了。在实参的数据类型是已知的、确定的情况下,不宜用ANY这个数据类型。
追求完美