[精讚] [會員登入]
2160

[PERL] 可用中文取名的中文名函式和package

原來perl 也可以用中文當函式、類別、方法的名稱啊

分享此文連結 //n.sfs.tw/10674

分享連結 [PERL] 可用中文取名的中文名函式和package@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2017-01-24 09:06:35 最後編修
2017-01-24 09:04:42 By 張○○
 

自動目錄

偶然逛到這個gugod's blog網站,原來perl 也可以用中文當函式的名稱‧

覺得很有趣,自己也來寫寫看,寫完自己也笑了,我終於能體會為什麼外國人寫程式比較容易,因為函式的名稱對外國人而言比較有意義。

這裡我特別用 package 的寫法,也是就是我們一般所謂的class,第2行的package main可省略不寫,寫出來只是區分和下面的package不一樣。

perl的package並不是用大刮號兩邊刮起來,所以結束package用一行:

1;

#!/usr/bin/perl -w
package main;
use utf8;
use encoding 'utf8';

  print "中文函式\n";
  動物->狗;
1;   # 這是 package 的結束記號,不要覺得很奇怪。

package 動物;

sub 狗{
#    &貓("狗函式");
    $狗叫聲 = 叫聲->狗;
    print "狗函式叫聲 ". $狗叫聲;
}
sub 貓{
    $_ = shift;
    print $_. "呼叫貓函式\n";
}
1;

package 叫聲;
    sub 狗{
        return "汪汪\n";
    }

    sub 貓{
        return "喵喵\n";
    }
1;

執行結果

中文函式
狗函式叫聲 汪汪

參考資料

[1] 指鹿為馬 Perl 版 http://gugod.org/2009/11/-perl-1.html


原文 2010-02-02 11:36:46

END

你可能感興趣的文章

[PERL] 07-陣列 #1 -- 基本 perl的陣列

[PERL] 12- 副程式 Perl 的副程式就是所謂的函數

[PERL] 08-陣列 #2 --操作 更多perl陣列的操作,如拆開、黏合、取出、加入等等

Perl 的特殊變數:$` $' $#陣列 $1 $2 .. $10 \1 \2 .. \10 介紹Perl 的 $` $' $#array $1..$10 \1..\10這些變數

Apache Worker MPM =worker 調整參數 Apache目前一共有三種穩定的MPM(Multi-Processing Module,多進程處理模式 簡稱: MPM)

[PERL] 14-進階比對 #1--取回比對內容 perl的正規表達式進階比對

隨機好文

[jQuery] 利用load()來達成ajax的寫法 jQuery中利用load()來達成ajax的寫法,也有人稱他是假的ajax,作法就是..

沒有非誰做不可的事,也沒有不可被取代的人 沒有非誰做不可的事,也沒有不可被取代的人

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?