参数传递的方式
- 您所在的用户组无法下载或查看附件
相信无论是初学按键还是大神级别的你,都有用过多点比色和多点找色这两个命令吧,那么不知道你有没有发现他们除了功能上的区别以外,还有哪些不一样呢?这里我就注意到了,多点比色(CmpColorEx)的返回值是是否对比成功,而多点找色(FindMultiColor)是没有返回值的,而是直接把结果写到参数中!
|
- 您所在的用户组无法下载或查看附件
根据我们的经验,一个函数传入的参数应该只是这个参数的复制体而已,我们立马尝试:
- 您所在的用户组无法下载或查看附件
这证明传入函数内的变量确实只是复制体,并不影响本身,那么我们要如何做到这种效果呢?有童鞋立马想到使用全局变量,这样不用传入变量也可以在函数内改变。但是这样做不利于函数的封装,需要配合特定变量名称的函数实际上还不如不封装。
不死心的我们继续尝试,这回我们使用复合类型去尝试:
- 您所在的用户组无法下载或查看附件
我们发现,数组和表作为参数传递都是将自身传入(涉及引用,有兴趣的同学可以自己百度哦),我们可以直接操作传入的参数并实际改变参数的数据,这十分的方便,我们来看一个例子,之前我在看到了山海插件(http://bbs.anjian.com/showtopic-600039-1.aspx)中看到了这样的命令:
- 您所在的用户组无法下载或查看附件
这是一个对数组进行排序的命令,勤(bu)奋(wu)好(zheng)学(ye)的我就开始研究他是如何实现的,发现sort采用的冒泡排序算法,于是直接用按键也写个冒泡排序算法出来:
- 您所在的用户组无法下载或查看附件
这里我们就将参数直接传入,并直接进行排序,是不是比返回值的方式更加方便快捷呢!想知道更多吗?请继续关注本系列教程。
- 您所在的用户组无法下载或查看附件