發新話題

Perl的基本語法 - 副程式(Subroutines)

Perl的基本語法 - 副程式(Subroutines)

副程式(Subroutines) [size=+1](a) Syntax: sub NAME {Code}
[size=+1](b) 呼叫副程式: &NAME(para1, para2,...)
[size=+1](c) 參數傳遞: @_Perl和C一樣是採用Call by value的方式,不過因為Perl不用事先宣告變數,所以建立副程式的時候也不用宣告要傳遞什麼參數。當主程式在傳遞參數給副程式時,Perl會把括號括起來的參數按順序放在一個特殊的全域變數 @_ 陣列中,然後副程式就可以隨意使用陣列 @_ 裡的參數,例如 $_[0] 是第一個參數, $_[1] 是第二個,或是用 [size=+1]my ($a1,$a2,$a3,...) = @_;來取出各個參數,當然 [size=+1]my @arg=@_;[size=+1]my %arg=@_; 也是可以的。由於Perl的語法非常活潑,使得程式在維護時特別棘手,因此寫註解成為一項很重要的工作。我建議你最好在每個副程式前面加上對這段副程式的描述,特別是需要傳遞的參數要註明清楚。
[size=+1](d) Variable Localization:my or local通常我們在程式中定義的變數都是全域變數,所以在副程式中若要把變數區域化則要加上 my 或 local 關鍵字,例如: [size=+1]my $x=3;,若副程式所用的變數名不小心和主程相同,Perl會以目前正在執行的副程式裡的變數為優先。

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。