perl 模組 - package範例
作者: cross 日期: 2011-04-03 22:43
cross.pl 程式內容
#!/usr/bin/perl
use strict;
use lib "/home/cross/test/lib"; # 我把自寫的perl module 寫在/home/cross/test/lib/Cross.pm
# 所以我要用 use lib 引用路徑
use Cross; # 再用 use 去使用 Cross模組my $c = new Cross('cross','yes'); # 名子是 cross,說了 yes
print " my name is ",$c->getname,", say ",$c->getyes; # 取得值
/home/cross/test/lib/Cross.pm 的內容
package Cross;
sub new {
my $class = shift; # 這個 $class 會得到 Cross 模組名稱
# 應該是這行 my $c = new Cross('cross','yes'); 的 Cross
my $aa = {}; # 宣告一個 HASH
$aa->{name} = shift; # 給 name=> 為 cross
$aa->{yes} = shift; # 而 yes => 為 yes
# $aa 長這樣子
# $VAR1 = {
# 'yes' => 'yes',
# 'name' => 'cross'
# };
bless $aa;
return $aa;
}sub getname {
my $class = shift; # $class 的樣子
# $VAR1 = bless( {
# 'yes' => 'yes',
# 'name' => 'cross'
# }, 'Cross' );
return $class->{name};
}sub getyes {
my $class = shift; # $class 的樣子
# $VAR1 = bless( {
# 'yes' => 'yes',
# 'name' => 'cross'
# }, 'Cross' );
return $class->{yes};
}1;
執行結果
my name is cross, say yes
上一篇
返回
下一篇
標籤:




perl 的 Getopt::Long 模組,在下指令時讓參數得到值 (2011-08-06 16:00)
perl 所謂的參照 (2011-08-02 23:59)
perl 的map功用 (2011-08-02 23:18)
perl 關於排序功能 (2011-08-02 22:41)
perl 如何輸入密碼時以星號*顯示 (2011-05-14 19:31)
perl 怎麼達到 ls 功能 (續) (2011-04-19 12:05)
編譯perl模組遇到的問題 (2011-03-07 16:27)
perl 一個可以學習怎麼寫CGI程式的地方 (2010-05-01 00:44)
perl 程式存取 MS Access MDB 資料庫 (續) UPDATE語法 (2010-03-12 10:58)