校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Perl中use和require用法對比分析

Perl中use和require用法對比分析

熱門標簽:浦東上海400開頭的電話申請 開封百應電銷機器人聯系方式 電話機器人電話卡封號怎么辦 邯鄲外呼調研線路 真人語音電銷機器人系統 武漢呼叫中心外呼系統線路商 樂昌電話機器人 買了外呼系統不想用了怎么辦 北京語音電銷機器人價格

Perl use和require用法對比

對比(一)說明:
這兩個函數都是一個意思,加載和引用Perl的模塊,或者是子程序,

區別在于Perl use是在當前默認的里面去尋找,一旦模塊不在指定的區域內的化,用Perl use是不可以引入的

第一、Perl use引入的名稱不需要后綴名,而require需要
第二、Perl use語句是編譯時引入的,require是運行時引入的
第三,Perl use引入模塊的同時,也引入了模塊的子模塊。而require則不能引入,要在重新聲明

Perl use my

my中包含了一個Module.pm

而require 則需要引入requiremy requiremy::Module.pm
如果不想讓Perl use引入Module.pm則可以用Perl userequire()加一對括號來說明即可。
第四用Perl use引入模塊是趨勢,但是也不能說require沒有存在的必要,視具體情況而定。

對比(二)說明

區別一:跟require不同的是,Perl use只能用于模塊的包含,也就是.pm文件。
比如:
Perl useMyModule;
實際上,編譯器將從@INC指定的目錄下去尋找MyModule.pm模塊。如果模塊名稱中包含::雙冒號,該雙冒號將作為路徑分隔符,相當于Unix下的/或者Windows下的。如:
Perl useMyDirectory::MyModule;
編譯器將從@INC指定的目錄下的MyDirectory子目錄去尋找MyModule模塊,類似如下路徑:
C:\Perl\lib\MyDirectory
C:\Perl\ext\lib\MyDirectory
C:\Perl\site\lib\MyDirectory

區別二:兩個都是包含,但是包含的條件是不一樣的。require包含是發生在程序運行期,而Perl use包含是發生在編譯期。學過C/C++的人比較容易理解。
下面的例子是錯誤的:  

復制代碼 代碼如下:

Perl useConfig; 
if($Config{'osname'}eq"MSWin32")
 {  Perl useWin32Module;  }
 else  {  Perl useUnixModule;  }

正因為Perl use是發生在編譯期,代碼沒有執行,所以$Config變量的值是無法判斷的。在內部,Perl use其實調用了require和import靜態函數。import()函數告訴包哪些特征將要被導入當前包中,這意味著用之前不必驗證函數或者變量是否合法。而require是不會調用import()的。

標簽:宜春 自貢 鄂州 六安 河北 松原 淄博 石嘴山

巨人網絡通訊聲明:本文標題《Perl中use和require用法對比分析》,本文關鍵詞  Perl,中,use,和,require,用法,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Perl中use和require用法對比分析》相關的同類信息!
  • 本頁收集關于Perl中use和require用法對比分析的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 普兰县| 长白| 行唐县| 枣庄市| 辰溪县| 勃利县| 志丹县| 江津市| 衡水市| 菏泽市| 定安县| 衡水市| 凉山| 邵东县| 商河县| 蒙阴县| 吐鲁番市| 离岛区| 嘉义市| 泽州县| 开平市| 纳雍县| 民勤县| 湖口县| 六安市| 凤庆县| 泰安市| 镇原县| 太湖县| 封开县| 西贡区| 商都县| 辽阳市| 英山县| 错那县| 昌图县| 连南| 白河县| 勐海县| 南通市| 临泉县|