傳入參數

文章推薦指數: 80 %
投票人數:10人

對於副程式而言,參數的傳遞是相當重要的,好的參數傳遞的方式可使副程式更有效的達到目的,有彈性的傳遞參數,也可使副程式更加有彈性及可靠性。

方法: ... 傳入參數 對於副程式而言,參數的傳遞是相當重要的,好的參數傳遞的方式可使副程式更有效的達到目的,有彈性的傳遞參數,也可使副程式更加有彈性及可靠性。

方法: Function max(a ,b)      If(a >b)then         max =a      Else          max=b      Endif EndFunction   程式解碼: 於左方的程式,為一典型的求兩者中最大值的程式,a,b即為傳入的參數,max則為回傳的值 (注意!回傳值便為函數的名稱),程式中,若傳入值 a大於傳入值b 則傳回值max=a;反之,若傳入值 a小於傳入值 b 則傳回值max=b。

  函數(Function) 我們之前所用過的Time,Date,Now等等, 這些都是VBScript的內建函數, 此外另一種的函數可以像副程式一樣, 由我們自己定義我們稱為自定函數o 函數(Function)與副程式的差異很小, 以之前的副程式例子來說,我們將它轉換成函數: %> Function x2(name1,year2) Response.write name1 If year2<20then Response.write "你是青少年" Elseif year2>=20andyear2<=59then Response.write "你是成年人" Elseif year2>=60then Response.write "你是老年人" End if End Function %> 我們可以發現到只是將副程式的Sub改成Function而以 ,而且連呼叫的方法也沒有什麼改變, 那副程式與函數到底有什麼不同呢? 函數涵蓋了副程式的所有功能,且增加了傳回值的功能, 但傳回值是什麼意思呢? 請看以下的例子: T=Time  ;Time函數的傳回值為系統時間 像是Time被呼叫後,會傳某一份資料回來, 這被傳回來的資料我們就稱為傳回值o 如何設定傳回值呢?方法是在函數結束之前執行此敘述函數名稱=欲傳回的值 o 請看以下的例子: 例如: Function y(X )                     ;y為函數名稱,又含有一名稱為X的參數      y=(1+x)+x* 2          ; 可以把右邊式子的值設定成y函數的傳回值 EndFunction S=y()                             ;呼叫y函數,傳入空白處為參數(請填參數值) Response.write"S的值="&S



請為這篇文章評分?