主頁 > 知識庫 > 解析 ruby 全局變量

解析 ruby 全局變量

熱門標(biāo)簽:中牟外呼系統(tǒng)違法嗎 巫師3地圖標(biāo)注魔力之所 外呼線路從哪里出來的 柯城手機地圖如何做地圖標(biāo)注 征服者企業(yè)地圖標(biāo)注 漯河電銷 淮安自動外呼系統(tǒng)供應(yīng)商 AI電銷機器人 線路 天津外呼系統(tǒng)怎么收費
 全局變量由$開頭.它們可以在程序的任何位置訪問到.在初始化前,全局變量有一個特殊的值 nil.

ruby> $foo
   nil
ruby> $foo = 5
   5
ruby> $foo
   5  


應(yīng)謹(jǐn)慎使用全局變量.由于在任何地方都可以被寫因此他們相當(dāng)危險.濫用全局變量會導(dǎo)致很難隔離臭蟲;同時也視為程序的設(shè)計未經(jīng)嚴(yán)格考慮.當(dāng)你發(fā)現(xiàn)必須要使用全局變量時,記得給它一個不會在其它地方一不小心就用到的描述性名字(像上面那樣叫$foo可能不是一個好想法).

全局變量的好處是其可以被跟蹤;你可以做一個當(dāng)變量值改變時被調(diào)用的過程.

ruby> trace_var :$x, proc{print "$x is now ", $x, "\n"}
   nil
ruby> $x = 5
$x is now 5
   5  


當(dāng)一個全局變量(改變時)作為一個過程的激發(fā)器,我們也管它叫活動變量(active variable).比如說,它可用于保持GUI顯示的更新.

這里列出了一些以$打頭并跟單個字符的特殊變量.比如,$$包含了Ruby解釋器的進程id,它是只讀的.這里是主要的系統(tǒng)變量以及它們的含義(細(xì)節(jié)可在Ruby的參考手冊中查到):

$!  最近一次的錯誤信息 
$@  錯誤產(chǎn)生的位置 
$_  gets最近讀的字符串  
$.  解釋器最近讀的行數(shù)(line number) 
$  最近一次與正則表達(dá)式匹配的字符串 
$~  作為子表達(dá)式組的最近一次匹配  
$n  最近匹配的第n個子表達(dá)式(和$~[n]一樣)  
$=  是否區(qū)別大小寫的標(biāo)志  
$/  輸入記錄分隔符 
$\&; 輸出記錄分隔符 
$0  Ruby腳本的文件名 
$*  命令行參數(shù) 
$$  解釋器進程ID 
$?  最近一次執(zhí)行的子進程退出狀態(tài) 

上面的 $_ 和 $~ 都有作用范圍.它們的名字暗示其為全局的,但它們一般都是這樣用的,關(guān)于它們的命名有歷史上的原因.  
 
您可能感興趣的文章:
  • Ruby的面向?qū)ο蠓绞骄幊虒W(xué)習(xí)雜記
  • Ruby的面向?qū)ο缶幊痰幕A(chǔ)教程
  • Ruby面向?qū)ο缶幊淘斀?/li>
  • ruby 面向?qū)ο笏季S 概念
  • ruby 學(xué)習(xí)筆記(2) 類的基本使用
  • ruby 類常量 解析
  • Ruby 中$開頭的全局變量、內(nèi)部變量、隱藏變量介紹
  • ruby 局部變量
  • ruby 變量
  • 簡要解讀Ruby面向?qū)ο缶幊讨械淖饔糜?/li>

標(biāo)簽:甘孜 西雙版納 內(nèi)江 河池 克拉瑪依 棗莊 南昌 大慶

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解析 ruby 全局變量》,本文關(guān)鍵詞  解析,ruby,全局,變量,解析,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《解析 ruby 全局變量》相關(guān)的同類信息!
  • 本頁收集關(guān)于解析 ruby 全局變量的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章

    上一篇:ruby 變量

    下一篇:ruby 實變量