Perl教學(14)Perl5的包與模塊之4
發表時間:2024-06-11 來源:明輝站整理相關軟件相關文章人氣:
[摘要]三、模塊多數大型程序都分割成多個部件,每一部件通常含有一個或多個子程序及相關的變量,執行特定的一個或多個任務。集合了變量和子程序的部件稱為程序模塊。1、創建模塊Perl 5中用包來創建模塊,方法是創建包并將之存在同名的文件中。例如,名為Mymodult的包存貯在文件Mymodult.pm中(擴展名...
三、模塊
多數大型程序都分割成多個部件,每一部件通常含有一個或多個子程序及相關的變量,執行特定的一個或多個任務。集合了變量和子程序的部件稱為程序模塊。
1、創建模塊
Perl 5中用包來創建模塊,方法是創建包并將之存在同名的文件中。例如,名為Mymodult的包存貯在文件Mymodult.pm中(擴展名.pm表示Perl Module)。下例的模塊Mymodult含有子程序myfunc1和myfunc2及變量$myvar1和$myvar2。
1 : #!/usr/local/bin/perl
2 :
3 : package Mymodule;
4 : require Exporter;
5 : @ISA = qw(Exporter);
6 : @EXPORT = qw(myfunc1 myfunc2);
7 : @EXPORT_OK = qw($myvar1 $myvar2);
8 :
9 : sub myfunc1 {
10: $myvar1 += 1;
11: }
12:
13: sub myfunc2 {
14: $myvar2 += 2;
15: }
第3~7行是標準的Perl模塊定義方式。第3行定義包,第4行包含內置Perl模塊Exporter,6、7行進行子程序和變量的輸出以與外界聯系。第6行創建名為@EXPORT的特殊數組,該數組中的子程序可以被其它程序調用,這里,myfunc1和myfunc2可以被訪問。其它任何在模塊中定義但沒有賦給數組@EXPORT的子程序都是私有的,只能在模塊內部調用。第7行創建另一個名為@EXPORT_OK的特殊數組,其中含有可被外部程序訪問的變量,這里含有$myvar1和$myvar2。