You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CODESYS中函数块实例传入另一函数块时按值还是按引用传递?

CODESYS函数块实例参数传递规则
  • 默认传递方式:按引用传递
    当把函数块(FB)实例作为参数传入另一个FB的VAR_INPUT变量时,默认传递的是该实例的引用。也就是说,在被调用的FB里对这个输入实例的任何修改,都会直接作用于原实例本身。

  • 强制按值传递的方法
    如果需要按值传递(创建原实例的副本,修改副本不影响原实例),可以在VAR_INPUT声明时加上BY_VALUE关键字,示例代码如下:

    FUNCTION_BLOCK MyReceiverFB
    VAR_INPUT
        // 声明为按值传递的FB实例参数
        fb_source : BY_VALUE MySourceFB;
    END_VAR
    
  • 官方文档说明位置
    相关规则在CODESYS官方文档的《CODESYS Development System Documentation》中,可通过CODESYS软件内置帮助系统(按下F1键)搜索以下关键词找到详细说明:

    • "Function Block Instance as Input Parameter"
    • "Parameter Passing Mechanisms for Function Blocks"

内容的提问来源于stack exchange,提问作者ivvi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 11:43:08