购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

5.2 按引用传递参数

按引用传递参数,在C语言中称为按指针传递参数,当参数传递到函数内部时,实际操作的就是原变量(对象)的值。在下面的代码中,先来看一个非引用参数,也就是按值传递参数的应用。

其中,swap()函数的代码看上去是在交换两个参数的值,但它们是按值传递的,在函数中操作的是$a和$b变量的副本,并不会实际修改$a和$b变量的值,也就不会实现两个变量交换数据的操作,代码执行结果见图5-2。

图 5-2

如果需要在函数中实际修改参数变量的值,可以将参数定义为按引用传递。下面的代码在参数变量前使用&符号。

代码执行结果见图5-3。

图 5-3

一些特定功能的函数,如本例的swap()函数中,不定义参数的数据类型是比较好的选择,这样就可以交换任何类型的数据。在一些开发环境中,如C#、Java等环境中,使用一个函数(方法)对多种数据类型进行相同操作时,往往需要泛型(generic)的支持,而PHP中数据类型应用的灵活性可以说是自带了“泛型光环”。 WeT4hTES8VSS2F18ysjWHq1empJjTE+KnV1ov8jPU2gcXvsaChNpAxKqD+oYaw1t

点击中间区域
呼出菜单
上一章
目录
下一章
×