国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Ruby > 正文

Ruby中目標文件調用之間的區別?

2020-02-24 15:39:47
字體:
來源:轉載
供稿:網友

當我們編寫模塊的時候,我們或多或少需要運行文件,這個時候我們還可以執行一些方法,在Ruby中,從當前文件運行還是由所需目標文件調用之間有區別?下面就讓武林技術頻道小編帶你來了解吧!

Python可以

比如像Python這樣

?

復制代碼 代碼如下:

if __name__ == '__main__':
??? print "from direct running"

?

Ruby當然也可以

對于處處為程序員著想,擁有快樂編程理念的Ruby來說當然是可以區別的。其原理就是判斷啟動文件是否為模塊的代碼文件。

復制代碼 代碼如下:

if __FILE__ == $0
??? puts 'called from direct running'
end

?

舉個例子

工具類模塊utils.rb

?

復制代碼 代碼如下:

module Utils
??? class StringUtils
??????? def self.test
??????????? puts "test method myfile=" + __FILE__ + ';load from ' +? $0
??????? end
??? end
end

?

if __FILE__ == $0
??? puts 'called from direct running'
??? Utils::StringUtils.test()
end

?

直接運行,結果,if條件成立,執行了輸出

?

復制代碼 代碼如下:

20:04:37-androidyue~/rubydir/test$ ruby utils.rb
called from direct running
test method myfile=utils.rb;load from utils.rb

?

引用Utils的類test.rb

?

復制代碼 代碼如下:

require './utils'
Utils::StringUtils.test()

?

運行結果,引入模塊的條件不成立,沒有輸出called from direct running

?

復制代碼 代碼如下:

20:08:07-androidyue~/rubydir/test$ ruby test.rb
test method myfile=/home/androidyue/rubydir/test/utils.rb;load from test.rb

Ruby中目標文件調用之間的區別就為各位朋友們介紹到這里了,大家看完之后,是不是受益匪淺呢?大家想要獲取更多的技術知識,就關注武林技術頻道吧!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 南靖县| 化隆| 吴川市| 沙田区| 宿州市| 乌鲁木齐县| 赞皇县| 玉山县| 太白县| 麻栗坡县| 关岭| 黄平县| 峡江县| 鄯善县| 陇西县| 平陆县| 丹凤县| 富宁县| 中阳县| 东城区| 齐齐哈尔市| 新和县| 城步| 司法| 琼结县| 区。| 清水县| 黔西县| 崇左市| 瑞金市| 荔波县| 揭东县| 东港市| 淅川县| 沙坪坝区| 永顺县| 周至县| 巴里| 连南| 普兰县| 德保县|