作者:
AIGecko (師大貓耳控)
2016-10-15 00:32:49版本為 ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu]
今天測試雜湊的literal發生一個問題
{ module: 2 }
這個字面常數不能正確輸入
按下enter後不會完成輸入
但是
{ :module => 2 }
則可以正常運行
搜尋過雜湊的字面常數或是保留字也沒有線索
是否有相關的保留字或是為BUG?
module 是關鍵字 所以應該只能用 :module
作者:
AIGecko (師大貓耳控)
2016-10-15 00:42:00好像有些保留字可以有些不行 正在踹do def module if for unless until while以上不可其他像是class when else end elsif就可以不行的保留字後面都是期待有end出現以前也沒想過這種用保留字的寫法會造成錯誤
作者:
AIGecko (師大貓耳控)
2016-10-15 21:52:00不小心混為一談了 關鍵字是和特殊意義 保留字是不能取名
作者:
AIGecko (師大貓耳控)
2016-10-16 22:02:00感謝樓上 測試過在檔案中寫了print({module:1})是合法的但是省略小括號就語法錯誤了
省略小括號會錯是因為後面就變 block 了你該省略的是大括號 print(module: 2)