用于自定義用戶函數(shù),函數(shù)既可帶參數(shù)也可不帶參數(shù),既可以有返回值也可以沒有。
Func 函數(shù)名 ( [ByRef] $參數(shù)1, ..., [ByRef] $參數(shù)N, $可選參數(shù)1 = 默認(rèn)值, ...)
...
[Return [返回值]]
EndFunc
參數(shù)
所有參數(shù)均由您定義。函數(shù)定義好后您就可以像其它內(nèi)建函數(shù)一樣調(diào)用它。
注意
參數(shù)前的關(guān)鍵字 ByRef(引用) 是可選的,它的意思是:(1) 該參數(shù)必須是變量; (2) 該變量必須可被函數(shù)修改(比如說不能是常量)。默認(rèn)情況下,參數(shù)是以 值傳遞 的方式傳遞到函數(shù)的(這意味著被傳遞到函數(shù)中的只是變量的一份副本,函數(shù)對(duì)該副本的任何操作都不能更改原變量的值)。
相關(guān)
Dim/Global/Local, #include
示例
; 帶有三個(gè)自定義函數(shù)的示例腳本
; 請(qǐng)注意變量的使用,ByRef傳遞 以及 返回值(Return)的用法
$foo = 2
$bar = 5
msgBox(0,"今天是 " & today(), "$foo 等于 " & $foo)
swap($foo, $bar)
msgBox(0,"在變量 $foo 和 $bar 交換之后", "現(xiàn)在 $foo 的值是: " & $foo)
msgBox(0,"最后", "3 和 4 中較大的數(shù)是: " & max(3,4))
Exit
Func swap(ByRef $a, ByRef $b) ;交換兩個(gè)變量的內(nèi)容
Local $t
$t = $a
$a = $b
$b = $t
EndFunc
Func today() ;以 mm/dd/yyyy 的形式返回當(dāng)前日期
return (@MON & "/" & @MDAY & "/" & @YEAR)
EndFunc
Func max($x, $y) ;返回兩個(gè)數(shù)中的較大值
If $x > $y Then
return $x
Else
return $y
EndIf
EndFunc
;示例腳本結(jié)束