在创建RAPID程序时普患配资,可以设定程序是否含有参数。程序的参数有:输入(in)、输入输出(inout)、变量(var)、可变量(pers) 四种模式。那不同的参数模式有什么区别呢?
图片
为了解答这个问题 ,首先约定一下“形参”和“实参”的统一认知。我们把程序本体中的参数称为形参,调用带参数程序时带入的数据称为实参。下图中对形参和实参进行了标注。
图片
带参数的程序中对形参进行运算操作普患配资,根据参数模式的不同,实参有会被改变自身的值和不会被改变自身的值两种情况发生,in模式下的实参其自身的值不会被改变,其他模式下的实参其自身的值会被改变。
当带参数程序Routine1的参数为in模式时,运行以下程序:
图片
输出结果为:
图片
当带参数程序Routine1的参数为inout模式时普患配资,运行相同的程序:
图片
输出结果为:图片
由以上示例程序可以看出in模式与其他参数模式的区别。输入(in)、输入输出(inout)、变量(var )、可变量(pers) 四种模式还有以下区别:
(1)In模式下的参数,因为实参自身不会被改变,所以实参可以是任何存储类型的数据,const、var、pers中的任何一种存储类型都可以;
(2)inout模式下的参数,因为实参自身会被改变,所以实参不能是const存储类型的数据,以const类型存储的数据不能在程序中被赋值;
(3)var/pers模式下的参数,实参自身会被改变,且实参的存储类型必须与形参的存储类型一致,var模式和per模式可以视为inout模式的两个子集;
为什么在示教器中赋值指令左边只有inout模式的形参出现在备选数据列表中?
这个应该是一个bug,在RobotStudio软件RAPID编程界面中,赋值指令左边可以是任意模式的参数普患配资,语法检查无错误,程序运行正常。
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。恒汇证券提示:文章来自网络,不代表本站观点。