亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 第十四章 perl5的包和模塊.htm

?? perl5教程
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
 &nbsp;  $var1 = 2;<br>
}
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;這段代碼創建了兩個變量$var1,一個在包pack1中,一個在包pack2中,包中的局域變量只能在其定義的子程序等語句塊中使用,像普通的局域變量一樣。<br>
<a name="2.7">7、用包定義私有數據</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;包最通常的用途是用在含有子程序和子程序所使用的全局變量的文件中,為子程序定義這樣的包,可以保證子程序使用的全局變量不可在其它地方使用,這樣的數據即為私有數據。更進一步,可以保證包名不可在其它地方使用。私有數據例:<br>
<blockquote>
1 :  package privpack;<br>
2 :  $valtoprint = 46;<br>
3 :  <br>
4 :  package main;<br>
5 :  # This function is the link to the outside world.<br>
6 :  sub printval {<br>
7 :  &nbsp;   &privpack'printval();<br>
8 :  }<br>
9 :<br>
10: package privpack;<br>
11: sub printval {<br>
12: &nbsp;  print ("$valtoprint\n");<br>
13: }<br>
14:<br>
15: package main;<br>
16: 1;   # return value for require
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;此子程序只有在調用printval后才能產生輸出。<br>
&nbsp;&nbsp;&nbsp;&nbsp;該文件分為兩個部分:與外界聯系的部分和私有部分。前者為缺省的main包,后者為包privpack。第6~8行定義的子程序printval可被其它程序或子程序調用。printval輸出變量$valtoprint的值,此變量僅在包privpack中定義和使用。第15、16行確保其被其它程序用require語句包含后工作正常,15行將當前包設置回缺省包main,16行返回非零值使require不報錯。<br>
<a name="2.8">8、包和系統變量</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;下列變量即使從其它包中調用,也在main包中起作用:<br>
<blockquote>
<li>文件變量STDIN, STDOUT, STDERR 和 ARGV </li>
<li>變量%ENV, %INC, @INC, $ARGV 和 @ARGV </li>
<li>其它含有特殊字符的系統變量</li>
</blockquote>
<a name="2.9">9、訪問符號表</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;在程序中查找符號表可用數組%_package,此處package為想訪問的符號表所屬的包名。例如%_main含有缺省的符號表。<br>
&nbsp;&nbsp;&nbsp;&nbsp;通常不需要親自查找符號表。<br><br>
<a name="3">三、模塊</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;多數大型程序都分割成多個部件,每一部件通常含有一個或多個子程序及相關的變量,執行特定的一個或多個任務。集合了變量和子程序的部件稱為程序模塊。<br>
<a name="3.1">1、創建模塊</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;Perl 5中用包來創建模塊,方法是創建包并將之存在同名的文件中。例如,名為Mymodult的包存貯在文件Mymodult.pm中(擴展名.pm表示Perl Module)。下例的模塊Mymodult含有子程序myfunc1和myfunc2及變量$myvar1和$myvar2。<br>
<blockquote>
1 :  #!/usr/local/bin/perl<br>
2 :<br>
3 :  package Mymodule;<br>
4 :  require Exporter;<br>
5 :  @ISA = qw(Exporter);<br>
6 :  @EXPORT = qw(myfunc1 myfunc2);<br>
7 :  @EXPORT_OK = qw($myvar1 $myvar2);<br>
8 :<br>
9 :  sub myfunc1 {<br>
10: &nbsp;    $myvar1 += 1;<br>
11: }<br>
12:<br>
13: sub myfunc2 {<br>
14: &nbsp;    $myvar2 += 2; <br>
15: }
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;第3~7行是標準的Perl模塊定義方式。第3行定義包,第4行包含內置Perl模塊Exporter,6、7行進行子程序和變量的輸出以與外界聯系。第6行創建名為@EXPORT的特殊數組,該數組中的子程序可以被其它程序調用,這里,myfunc1和myfunc2可以被訪問。其它任何在模塊中定義但沒有賦給數組@EXPORT的子程序都是私有的,只能在模塊內部調用。第7行創建另一個名為@EXPORT_OK的特殊數組,其中含有可被外部程序訪問的變量,這里含有$myvar1和$myvar2。<br>
<a name="3.2">2、導入模塊</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;將模塊導入你的Perl程序中使用use語句,如下句導入了Mymodule模塊:<br>
&nbsp;&nbsp;&nbsp;&nbsp; use Mymodule;<br>
&nbsp;&nbsp;&nbsp;&nbsp;這樣,模塊Mymodule中的子程序和變量就可以使用了。<br>
&nbsp;&nbsp;&nbsp;&nbsp;取消導入模塊使用no語句,如下句取消了Mymodule模塊的導入:<br>
&nbsp;&nbsp;&nbsp;&nbsp; no Mymodule;<br>
&nbsp;&nbsp;&nbsp;&nbsp;下面看一個導入模塊和取消導入的例子,使用integer模塊要求所有數字運算基于整數,浮點數在運算前均被轉化為整數。<br>
<blockquote>
1:  #!/usr/local/bin/perl<br>
2:<br>
3:  use integer;<br>
4:  $result = 2.4 + 2.4;<br>
5:  print ("$result\n");<br>
6:<br>
7:  no integer;<br>
8:  $result = 2.4 + 2.4;<br>
9:  print ("$result\n");
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;程序輸出如下:<br>
<blockquote>
$ program<br>
4<br>
4.8<br>
$
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;如果use或no語句出現在語句塊中,則只在該塊的有效范圍內起作用,如:<br>
<blockquote>
use integer;<br>
$result1 = 2.4 + 2.4;<br>
if ($result1 == 4) {<br>
no integer;<br>
$result2 = 3.4 + 3.4;<br>
}<br>
$result3 = 4.4 + 4.4; 
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;結果輸出如下:<br>
<blockquote>
4<br>
6.8<br>
8
</blockquote>
&nbsp;&nbsp;&nbsp;&nbsp;這里,no語句只在if語句中有效,出了if語句仍使用integer模塊,因此4.4在做加法前被轉化成了4。<br>
<a name="3.3">3、預定義模塊</a><br>
&nbsp;&nbsp;&nbsp;&nbsp;Perl 5提供了許多有用的預定義模塊,可以用use導入和no語句取消。下面是庫中最有用的一些模塊:<br>
<p><center>
<TABLE border="1">
<TR VALIGN=TOP>
	<TD>integer</TD>
	<TD>使用整數運算</TD>
</TR>
<TR VALIGN=TOP>
	<TD>Diagnostics &nbsp; </TD>
	<TD>輸出較多的診斷信息(警告)</TD>
</TR>
<TR VALIGN=TOP>
	<TD>English</TD>
	<TD>允許英文名用作系統變量的別名</TD>
</TR>
<TR VALIGN=TOP>
	<TD>Env</TD>
	<TD>導入環境變量的Perl模塊</TD>
</TR>
<TR VALIGN=TOP>
	<TD>POSIX</TD>
	<TD>POSIX標準(IEEE 1003.1)的Perl接口 &nbsp; </TD>
</TR>
<TR VALIGN=TOP>
	<TD>Socket</TD>
	<TD>裝載C語言的套接字處理機制</TD>
</TR>
</TABLE></CENTER></p>
&nbsp;&nbsp;&nbsp;&nbsp;Perl文檔中有完整的預定義模塊列表。<br>
&nbsp;&nbsp;&nbsp;&nbsp;注:世界各地的Perl 5用戶寫了許多有用的模塊,CPAN(Comprehensive Perl Archive Network)的Perl文檔有其完整的列表。關于CPAN的更多信息見其網址:<a target="_blank" href="http://www.perl.com/perl/CPAN/README.html">http://www.perl.com/perl/CPAN/README.html</a>。<br>




<p align="center"><a href="第十三章 Perl的面向對象編程.htm">上一章</a> <a href="附錄一 函數集.htm">下一章</a> <a href="index.htm">目錄</a></p>
<br>
</body>
</html>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人三级伦理片| 欧美一卡2卡3卡4卡| 欧美日韩色一区| 久久久不卡影院| 亚洲精品国产精华液| 国产九色sp调教91| 69久久夜色精品国产69蝌蚪网| 久久综合狠狠综合久久激情| 亚洲午夜精品久久久久久久久| 国产suv精品一区二区883| 制服丝袜日韩国产| 一区二区三区不卡视频在线观看| 国产伦精品一区二区三区免费迷 | 日韩欧美成人激情| 亚洲福利一二三区| 成人高清在线视频| 久久网站最新地址| 美女视频第一区二区三区免费观看网站 | 麻豆成人久久精品二区三区小说| 久久综合丝袜日本网| 亚洲国产精品嫩草影院| 高潮精品一区videoshd| 日韩欧美的一区| 日本不卡1234视频| 欧美高清性hdvideosex| 一区二区视频免费在线观看| 成人激情视频网站| 国产精品五月天| 国产成人av电影在线观看| 日韩欧美卡一卡二| 蜜桃视频一区二区三区| 欧美绝品在线观看成人午夜影视| 亚洲激情一二三区| 色综合天天综合在线视频| 亚洲国产精品激情在线观看| 国产成人av电影免费在线观看| 精品国产乱码久久久久久图片| 久久国产精品第一页| 欧美mv和日韩mv国产网站| 国产在线播精品第三| 精品成人一区二区| 国产一区二区在线免费观看| 久久久久久亚洲综合| 国产成人在线免费观看| 亚洲欧洲av在线| 在线一区二区视频| 午夜精品久久久久影视| 欧美精品视频www在线观看| 亚洲国产精品欧美一二99| 欧美午夜一区二区三区| 日韩中文字幕区一区有砖一区| 制服丝袜亚洲色图| 国产在线不卡一区| 国产精品女主播av| 欧美在线免费观看亚洲| 日本成人在线一区| 久久久久9999亚洲精品| 91在线观看免费视频| 亚洲一区二区三区爽爽爽爽爽| 欧美人狂配大交3d怪物一区| 精品一区二区三区在线视频| 国产日韩一级二级三级| 91浏览器打开| 日韩精品国产欧美| 国产日本欧洲亚洲| 欧美色综合网站| 黄页视频在线91| 亚洲日本电影在线| 日韩一级黄色大片| 国产成人精品三级| 婷婷一区二区三区| 国产欧美一区二区在线| 在线观看亚洲一区| 国产一区二区三区蝌蚪| 一区二区三区加勒比av| 精品嫩草影院久久| 91色porny| 国产一区不卡精品| 亚洲成人动漫在线观看| 国产目拍亚洲精品99久久精品| 日本国产一区二区| 91精品国产综合久久久蜜臀图片 | 日韩亚洲欧美在线| 91小视频在线| 国产在线不卡视频| 天天综合网 天天综合色| 久久久噜噜噜久久中文字幕色伊伊 | 成人欧美一区二区三区| 7777精品伊人久久久大香线蕉的 | 制服丝袜av成人在线看| 99综合影院在线| 国产真实乱子伦精品视频| 亚洲午夜日本在线观看| 国产三级三级三级精品8ⅰ区| 欧美日韩国产高清一区| av在线不卡电影| 国产剧情一区在线| 麻豆精品蜜桃视频网站| 亚洲第一狼人社区| 一区二区激情小说| 一区二区三区欧美| 中文字幕一区在线| 国产精品美女一区二区三区| 久久久噜噜噜久久人人看| 欧美一二三在线| 欧美精三区欧美精三区| 欧美午夜一区二区三区| 欧洲一区二区三区在线| 91视频.com| 9i在线看片成人免费| 成人黄色小视频在线观看| 国产一区二区在线电影| 国产在线精品免费av| 看电视剧不卡顿的网站| 日本欧美肥老太交大片| 婷婷综合久久一区二区三区| 午夜国产不卡在线观看视频| 亚洲国产精品精华液网站| 亚洲国产中文字幕在线视频综合| 亚洲曰韩产成在线| 亚洲成av人在线观看| 亚洲成人动漫在线观看| 婷婷成人综合网| 六月丁香综合在线视频| 另类小说视频一区二区| 韩国理伦片一区二区三区在线播放| 久久精品国产亚洲aⅴ| 久久精品99国产精品日本| 精品一区二区免费在线观看| 国产专区欧美精品| 国产不卡在线视频| 91女人视频在线观看| 日本道精品一区二区三区| 色av一区二区| 欧美日韩精品欧美日韩精品一综合| 欧美日韩黄色影视| 精品国产免费视频| 国产精品视频观看| 国产suv精品一区二区6| 91免费小视频| 在线观看91精品国产麻豆| 日韩精品专区在线影院重磅| 国产欧美精品在线观看| 亚洲在线视频网站| 国产一区二区久久| 色哟哟亚洲精品| 日韩欧美国产一区二区在线播放 | 成人免费看黄yyy456| 欧美在线高清视频| 精品少妇一区二区三区在线播放 | 男女视频一区二区| 高清视频一区二区| 欧美性一区二区| www激情久久| 亚洲欧洲三级电影| 日韩av网站免费在线| 国产成人午夜高潮毛片| 91国产福利在线| 久久综合五月天婷婷伊人| 一区二区三区影院| 久久99这里只有精品| 日本乱码高清不卡字幕| 精品不卡在线视频| 一卡二卡欧美日韩| 国产成人精品免费一区二区| 欧美日韩在线精品一区二区三区激情 | 欧美综合在线视频| 欧美精品一区二区三区一线天视频| 亚洲女人的天堂| 国精品**一区二区三区在线蜜桃| 色八戒一区二区三区| 中文字幕精品一区二区精品绿巨人| 亚洲v日本v欧美v久久精品| 国产黄人亚洲片| 欧美一级二级在线观看| 亚洲精品美腿丝袜| 成人精品国产免费网站| 日韩欧美国产综合| 亚洲mv大片欧洲mv大片精品| www.在线欧美| 国产三级精品三级在线专区| 水蜜桃久久夜色精品一区的特点| 91免费精品国自产拍在线不卡| 精品国产精品网麻豆系列| 亚洲va韩国va欧美va| av中文字幕不卡| 日本一区二区电影| 国产不卡在线视频| 精品sm捆绑视频| 激情综合亚洲精品| 日韩欧美一区二区在线视频| 亚洲成人自拍网| 欧美亚洲综合久久| 亚洲综合一区二区三区| 99精品在线免费| 一色屋精品亚洲香蕉网站| 成人av影视在线观看| 国产亚洲精品资源在线26u| 国产乱淫av一区二区三区 | 欧美亚一区二区|