里可以再irb 打開子會(huì)話。 irb -r test.rb =>在打開irb時(shí)直接加載文件 jobs =>顯示所有的會(huì)話..."/>
溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Ruby學(xué)習(xí)筆記系列(三)

發(fā)布時(shí)間:2020-08-29 13:22:06 來源:網(wǎng)絡(luò) 閱讀:563 作者:夜半煮飯 欄目:編程語言

1, irb的一些小用法

irb                 =>里可以再irb 打開子會(huì)話。
irb -r test.rb      =>在打開irb時(shí)直接加載文件
jobs                =>顯示所有的會(huì)話,除當(dāng)前會(huì)話外其它的會(huì)話都是休眠的。
fg 0                =>激活會(huì)話0


2,  ruby 里的 include,require,load的顯著區(qū)別


1> require和load不同,它只加載文件一次,即在第一次執(zhí)行到require時(shí)載入,以后碰到require同一文件時(shí)自動(dòng)忽略,已經(jīng)被加載的文件保存在$”中。


2> require還可以用來加載二進(jìn)制格式的庫。Require可以使用絕對路徑或相對路徑,如果使用了相對路徑,那么系統(tǒng)會(huì)在$:變量包含的目錄中搜尋。


3> Require和load的另一個(gè)不同是當(dāng)包含文件是Ruby代碼時(shí),require可以不加后綴名。Require將當(dāng)前所有加載的文件保存在$"變量中。


4> 在Irb里用load比用require 好,load允許我們多次加載同一個(gè)文件,這樣如果我們發(fā)現(xiàn)一個(gè)BUG后編輯文件,可以將它重新加載到Irb的會(huì)話中。


總結(jié):

1,require, load,include都是Kernel模塊中的方法,他們的區(qū)別如下:
2,require,load用于包含文件,include則用于包含的模塊。
3,require加載一次,load可加載多次。
4,require加載Ruby代碼文件時(shí)可以不加后綴名,load加載代碼文件時(shí)必須加后綴名。
5,require一般情況下用于加載庫文件,而load用于加載配置文件。



3, 當(dāng)運(yùn)行時(shí)總出現(xiàn)invalid multibyte char (US-ASCII) (SyntaxError),系統(tǒng)不能解析中文,而又不想每個(gè)文檔都加 # encoding: UTF-8

安裝magic-encoding可以完美的解決這個(gè)問題。

 gem install magic_encoding

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI