恭喜,你发布的帖子
发布于 2021-01-15 14:09:22
7楼
1、IN/OUT区域声明结构化数据类型,进行指针传递,FB和FC中使用效果是一样的吗?FC中没有静态变量存储区,通过IN/OUT可以实现跨周期访问;FB中通过静态变量实现跨周期访问;那么在FB中使用IN/OUT和STATIC方式实现跨周期访问有什么区别吗?我的理解是都需要占用存储空间,全局和背景之间的区别。
2、FC中声明REF_TO类型变量,仅可以在INPUT、OUTPUT区域,为什么课中的案例是在temp区定义的?
3、FB只能temp区声明REF_TO类型变量,我的理解是temp区域也要消耗堆栈空间,那这跟Variant转存临时变量有什么区别呢?REF_TO的意义在哪呢?
1、关于参数传递问题,建议您参看一下TIA的编程指南,SIOS的id号是:81318674
在书中的3.3小节会总结了不同块类型传递不同参数类型的方式,如下表:
如果写的copy的就需要占用主调块的存储区域进行参数的传递,而写reference的则是引用的意思,指无需拷贝,间接访问实参的形式。故而,您担心的区别还是有的。
2、请您仔细参看下教材的4.3.3,在引用的小节内明确说明ref_to是可以在temp中使用的,如下图:
3、这个您要仔细看我给您画的图,ref_to是引用的意思,也就是说不会占用主调的存储空间,您可以理解为就是一个指针,指向对象。
请填写推广理由:
分享
只看
楼主