在仿真过程中,不可避免函数之间的相互调用,在SimTalk中参数有两种传递方式,类似于C++中的值传递和引用传递。

值传递

值传递是指在函数调用时将实际参数复制一份传递到函数中,在函数中对值进行修改不会影响到实际参数。在SimTalk中值传递的变量类型有:boolean, integer, real, string, object, time等及数组。

引用传递

引用传递是指在调用函数时将实际参数的地址传递到函数中,那么在函数中对参数所进行的修改,将影响到实际参数。在SimTalk中引用传递的变量类型有:table及其派生类型(list, queue等)。

利用 byref 函数可将所有参数转化为引用传递。

 

发表评论