[精讚] [會員登入]
2331

[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] Perl 不立即輸出的列印緩衝區問題 解決Perl 不立即輸出而是最後一次輸出的列印緩衝區問題

[PERL] 命令列傳入參數 argv Perl 的外部傳參,是$ARGV[0]、$ARGV[1]、$ARGV[2].....

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

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

PERL的真值和假值(布林值) 整理Perl中的判斷真假的結果

Perl 的特殊變數:$_、$&、$! 介紹perl的特殊變數 $_ 、 $&、$!

隨機好文

[PHP] 檢查檔案是否是圖檔 使用getimagesize函數檢查檔案是否是圖檔

[MAC] 安裝APACHE+PHP OS Darwin OpenIDMac1deAir 15.6.0 Darwin Kernel Version 15.6.

抽油煙機濾網清洗方法 我發現的抽油煙機濾網清洗方法(限18+操作使用)

彩繪機車一 彩繪三陽迪爵125

使用GPG檔案加解密 簡易的檔案加解密方式,可以讓你重要的資料包括文字檔加解密。