做use My::Module
和require My::Module
有什麼區別?在Perl中,加載模塊的使用和要求有什麼區別?
回答
從perldoc -q
"difference between require and use":
use Module
就像require Module
,除了use
4.1:在編譯時加載的模塊,而不是運行時。
4.2:將符號和語義從該包導入到當前包。
use
在編譯時運行,並且require
在運行時運行。
不要忘記調用`import`。 – 2009-07-21 20:54:28
這是他們在Perl測試和求職面試中尋找的答案。你需要記住這個! – Hawk 2014-06-02 14:52:53
Perl附帶豐富的文檔。每隔幾個月至少閱讀一次所有文檔,每個人都將受益。
否則
require
要求該庫文件是包含 如果它尚未被列入 。該文件通過 do-FILE機制包括在內,其實質上只是各種eval ,其中調用腳本中的詞彙變量 將是 對於包括的代碼是不可見的。有 語義相似如下 子程序:
...等等同樣,
C:\>
perldoc -f use
通過混淆某些 子程序或變量名到您的 包進口一些語義到 當前包從命名的模塊, 一般。它完全等同於
BEGIN { require Module; Module->import(LIST); }
除了該模塊必須是空白字。
...等
也有perlfaq entry雖然我覺得它比上面的信息較少。
- 1. 模塊中@和@@有什麼區別?
- 2. 在Node.js模塊中使用「exports」和「this」有什麼區別?
- 3. Perl模塊autodie和Fatal有什麼區別?
- 4. Perl中的'eq'和'=〜'有什麼區別?
- 5. 「perl -n」和「perl -p」有什麼區別?
- 6. Perl中'for'和'foreach'有什麼區別?
- 7. Perl中BAREWORD和* BAREWORD有什麼區別?
- 8. Perl中$ dxyabc和$ {dxyabc}有什麼區別?
- 9. Perl中grep和map有什麼區別?
- 10. 爲什麼我需要加載JavaScript模塊,所有這些加載器之間有什麼區別?
- 11. 在Strawberry Perl中,perl \ lib和perl \ site \ lib有什麼區別?
- 12. 加載模塊使用Node.js的要求
- 13. Node.js的Cluster模塊和Learnboost的Cluster模塊有什麼區別?
- 14. Ansible模板模塊和複製模塊有什麼區別?
- 15. 要求和ng要求有什麼區別?
- 16. 要求'a'和要求'a.rb'有什麼區別?
- 17. 使用Zend Framework,模塊和包裝之間有什麼區別
- 18. 這兩種在Prism中加載模塊的方式有什麼區別?
- 19. Foo級有什麼區別; end&Foo = Class.new(和模塊/模塊)?
- 20. 包括模塊和嵌入模塊有什麼區別?
- 21. Azure AD模塊和MS Online模塊之間有什麼區別
- 22. 使用什麼Perl模塊?
- 23. 「perl test.pl」和「./test.pl」有什麼區別?
- 24. perl中名稱空間,包和模塊之間有什麼區別?
- 25. 這些NGINX模塊有什麼區別?
- 26. 模塊管理器,模塊監聽器和模塊加載器有什麼區別?
- 27. IntelliJ中的SBT項目和Scala模塊有什麼區別?
- 28. maven中的繼承和子模塊概念有什麼區別?
- 29. Node.js MySQL模塊中的mysql.createConnection和mysql.createPool有什麼區別?
- 30. Python中的模塊和庫有什麼區別?
@Ether:但這是m。無論如何,其中之一。 – ysth 2009-07-22 02:49:48
這可能很容易找到你自己的,但它絕對是一個非常好的Perl問題,初學者容易問。我不明白爲什麼它不應該在stackoverflow上。傷害在哪裏? – innaM 2009-07-22 06:37:33