亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: Ruby 的問題 [打印本頁]

作者: 104359176    時(shí)間: 2015-09-20 10:37
標(biāo)題: Ruby 的問題
Ruby 太過簡(jiǎn)潔了

1. 變量賦值

在 while , for 等代碼塊中,賦值并不能保證建立一個(gè)新的變量,而且變量名稱也不是局部的。
在代碼塊執(zhí)行完后,變量的值依舊保留。

因?yàn)?Ruby 的賦值,會(huì)首先檢查它的上層調(diào)用棧中是否存在同名的變量,如果存在,就會(huì)對(duì)那個(gè)
變量進(jìn)行賦值。除非用:
  1. local_var = 10

  2. for x in [1,2,3] {
  3. |local_var|
  4. local_var = 1
  5. }
復(fù)制代碼
所以使用 Ruby 的小心了,在代碼塊中,變量的名稱最好不要與全局變量或者什么變量相同,否則就容易出問題。

2, 代碼檢查

哈希賦值的變量會(huì)被認(rèn)為是沒有使用:
  1. key, value = [1,2]
  2. hash[key] = value
復(fù)制代碼
使用 ruby -w 的方式檢查代碼,會(huì)給出一個(gè)警告,說 value 定義后,未被使用。

3. 未定義變量會(huì)默默的賦值為  nil

如果在代碼中突然出現(xiàn)一個(gè)變量名稱在值中,那么ruby 會(huì)默默的給他賦值為 nil。所以當(dāng)你拼錯(cuò)變量名稱的時(shí)候,系統(tǒng)并不會(huì)給你提示,即使是用 -w 的形式檢查代碼。




歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2