WINCC vb脚本ByVal是什么意思

如题所述

第1个回答  2017-11-30
函数参数类型是传真
第2个回答  2017-12-01
在Visual Basic中,按值传递方式通过关键字 ByVal (By Value)来实现。也就是说,在定义通用过程时,如果形参前面有关键字ByVal,则该参数用传值方式传送,否则即以引用(即按地址)方式传递。

例如:
Dim s = 1
Private Sub Form_Load()
Debug.print increment(s)
Debug.print s
End Sub
Private Function increment(ByVal x As Integer)
x=x+1
Debug.print x
End Function

输出结果:
2
1

这里的形参x前有关键字ByVal,调用时以按值方式传递实参。
也就是说,外部的变量数值不会因为它的数值的改变而改变。
与之相对应的则为ByRef关键字。
使用 ByRef 关键字时,参数的传递方式就是按地址传递。
注意:
1.按值传递方式只能用于外部向被调用过程内部传递数据。
2.按地址传递方式可以实现数据的双向传递。本回答被网友采纳
相似回答