回复:REF_TO转存Variant功能,求教?

贾岑

西门子1847工业学习平台

  • 帖子

    826
  • 精华

    2
  • 被关注

    20

论坛等级:侠圣

注册时间:2006-04-28

普通 普通 如何晋级?

发布于 2021-01-15 14:09:22

7楼

展开查看
以下是引用-肖-在2021-01-15 11:49:08的发言 >5楼

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是引用的意思,也就是说不会占用主调的存储空间,您可以理解为就是一个指针,指向对象。



但行好事 莫问前程
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

PLC编程精英训练营

共有1542条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。