@reqlist = ("file1.pl", "file2.pl", "file3.pl");?????????????????????
require ($reqlist[$0]);
require ($reqlist[$1]);
require ($reqlist[$2]);
a?????????????????????»Ç??????/u/perldir?§Õ??????Perl???????????mysub?????????mysub.pl?§³???????????????????
b????????????????????????§µ?????????????????
c?????????¦Â????????????????????????? 1;
d??????????????require?????????????????????
e????????????????? -I ?????????????????????????require???????????@INC?????§³?
1????????unshift????@INC???????????????push?????push?????@INC???¦Â???????????????????2????require???Perl?·Ú
2????????????????/usr/local/lib/perl?§Ö???????????????????????????require????????????§Ö???????
$var = 14;??????????????$var????????main??????§µ????????????????????????$var????????mypack?????????§³?
package mypack;
$var = 6;
1: #!/usr/local/bin/perl???§ß?????¡ê?
2:
3: package pack1;
4: $var = 26;
5: package pack2;
6: $var = 34;
7: package pack1;
8: print ("$var\n");
$ program?????§Ø??????pack1???????§Õ???????$var?????????pack1???????§µ??????§Ø????¡ã?pack2???????§Õ????????????$var?????????pack2???????§³???????????????????$var????????????????§³????????????pack1?????????????pack1??????ÈÉ?????????§Ò?????????????????????e????????§Õ????????????????§Ø?$var??????pack1???§Ö?$var??????26??
26
$
package mypack;????$mypack'var?mypack???§Ö????$var??
$var = 26;
package main;
print ("$mypack'var\n");
package mypack;????mysub??myvar?????mypack???????????mypack??????????mysub????????????$mypack'mysub??
subroutine mysub {
local ($myvar);
# stuff goes here
}
package pack1;??¦Ä???????????????$var1????????pack1?§µ???????pack2?§µ????§Ö???????????????????????????????????????????????????
subroutine mysub {
$var1 = 1;
package pack2;
$var1 = 2;
}
1 : package privpack;???????????????printval?????????????
2 : $valtoprint = 46;
3 :
4 : package main;
5 : # This function is the link to the outside world.
6 : sub printval {
7 : &privpack'printval();
8 : }
9 :
10: package privpack;
11: sub printval {
12: print ("$valtoprint\n");
13: }
14:
15: package main;
16: 1; # return value for require
9?????????????????STDIN, STDOUT, STDERR ?? ARGV ????%ENV, %INC, @INC, $ARGV ?? @ARGV ???????????????????????
1 : #!/usr/local/bin/perl??3~7????????Perl??úE?Ùã?????3?§Ø????????4?§Ñ???????Perl???Exporter??6??7?§ß???????????????????????????????6?§Õ??????@EXPORT?????????ï…???????§Ö??????????????????????????myfunc1??myfunc2???????????????¦Ê???????§Ø??áÑ??§Ú???????@EXPORT???????????§Ö????????????????¨¢???7?§Õ???????????@EXPORT_OK?????????ï…???§Ü??§á???????????????????????$myvar1??$myvar2??
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: }
1: #!/usr/local/bin/perl??????????¡ê?
2:
3: use integer;
4: $result = 2.4 + 2.4;
5: print ("$result\n");
6:
7: no integer;
8: $result = 2.4 + 2.4;
9: print ("$result\n");
$ program???use??no?????????????§µ???????????§¹??¦¶??????????»Ç
4
4.8
$
use integer;?????????¡ê?
$result1 = 2.4 + 2.4;
if ($result1 == 4) {
no integer;
$result2 = 3.4 + 3.4;
}
$result3 = 4.4 + 4.4;
4????no??????if???????§¹??????if????????integer??ï…???4.4?????????????????4??
6.8
8
| integer | ??????????? |
| Diagnostics | ??????????????????—¥ |
| English | ???????????????????????? |
| Env | ????????????Perl??? |
| POSIX | POSIX?????IEEE 1003.1????Perl??? |
| Socket | ???C???????????????? |