==================================包package===========================
package mypack; 包文件的其始语句
此语句定义一个名为mypack的包,从此以后定义的所有变量和sub的名字都存贮在该包关联的符号表中,直到遇到另一个package语句为止。

包文件——包是面向对象的概念

#!/usr/bin/perl
package xxx; package指令创建“类”;

sub ... 创建sub就是创建“类”的“方法”
sub ...
sub ...

1; 包文件结尾要retrun 1



包(类)引用:

&mypack'printval();
在包mypack外调用包内sub
$mypack'line=10;
or
$mypack::line=10;
在包mypack外调用包内变量

perl5中建议$mypack::var
单引号引用的方式仍然支持,但将来的版本中未必支持



perl文件缺省包——main包

#!/usr/bin/perl

$i=0;

sub gotest {

}
等价 #!/usr/bin/perl
package main;
$i=0;

sub gotest {

}



如果在程序里package了其它的包,当你想切换回去使用缺省的符号表,可以重新指定package main;
这样,接下来的程序就好象从没定义过包一样