@NumParams 宏如何使用?
@NumParams使用方法给个例子? Func Test($flag)If 1==$flag Then msgbox(0,1,1)
return @NumParams
EndFunc
$value = Test(1)
Msgbox(0,3,$value) 回复 2# yarsye
差不多了解用法了,不过这个宏好像没什么用啊,至少目前没发现 很有用的
特别当一个自定义函数有些是赋了初值的,这样可以知道某次函数调用时,倒底用了几个参数
Func Test($flag, $aa =2)
If 1==$flag Then msgbox(0,1,1)
return @NumParams
EndFunc
$value = Test(1, 3)
$Val = Test(1)
Msgbox(0,3,$value)
Msgbox(0,0,$val) 回复 4# happytc
二楼的代码我已经测试过你这样的代码了,但是我不知道在实际应用中,知道函数中用了几个参数有
什么用,诺想到,举个具体点儿的实例? 功能大概和函数重载差不多 参数不同处理方法不同 回复 6# lainline
用实例说话 哈~我终于发现了@NumParams在实际运用中的意义!!{:face (303):} 回复 8# binghc
这么兴奋,举个例子呗 回复binghc
这么兴奋,举个例子呗
daiyu116 发表于 2011-7-22 09:05 http://www.autoitx.com/images/common/back.gif
很容易想到用处,虽然可以用别的方法代替,如:
_Test(0)
Func _Test($A = 0, $B = 3, $C = 6)
MsgBox(0,0,"4个参数中调用了默认的:" & (4 - @NumParams) & "个")
EndFunc
回复 10# happytc
目前已经想到两种用法,给提示其中一种可以用来模拟定义一个接收变长参数的函数,这听起来有点疯狂吧,哈哈{:face (303):} 回复 11# binghc
不如直接贴代码 来得更加简洁明了。 回复 12# pusofalse
我经常用它的是这样用:直接进入界面的某个标签 :
Func Config($TabFlag=0)
If @NumParams > 0 Then
Switch $TabFlag
Case 0
GUICtrlSetState($RecordModeTab, $GUI_SHOW)
Case 1
GUICtrlSetState($OptionTab, $GUI_SHOW)
Case 2
GUICtrlSetState($HotkeyTab, $GUI_SHOW)
Case 3
GUICtrlSetState($OutputTab, $GUI_SHOW)
EndSwitch
EndIf
页:
[1]