(已解决)定义函数参数时加入Byref后就不可以给之前的参数赋值?
本帖最后由 yarsye 于 2011-5-4 15:03 编辑dim $a
test(2,3,$a)
msgbox(0,1,$a)
func test($x = 2, $y = 3,byref $z)
$z = $x+$y
endfunc
这样是会报错的 说:all params followed by optional params must be optional意思应该是说 :通过可选的参数,必须遵守所有参数是可选的
不太懂他的意思,当然当我把func test($x = 2, $y = 3,byref $z) 中$x,$y不赋值就行了,这是为什么?是不可以在byref之前的参数赋值吗?
解决:楼下两位两大的解释很到位,为什么我就不能独立分析出来呢,只是在你们讲了后才明白。
感谢楼下大侠了 个人理解,可选参数应该放到所有参数的后面吧.
dim $a
test($a)
msgbox(0,1,$a)
func test(byref $z,$x = 2, $y = 3)
if $x=0 then $x=2
if $y=0 then $y=3
$z = $x+$y
endfunc 回复 2# 3mile
谢谢 !
原来如此啊。 all params followed by optional params must be optional
所有由可选参数跟随的参数必须也是可选的 感谢了 结贴 学习了,谢谢上面2位的解疑
页:
[1]