y:= 3。 Z:= 4。
h:='[x:= y + z。]'。
(BlockClosure readFromString:h)的值。將字符串分配給塊並以小寫形式執行它們
我有這樣的代碼,我正在嘗試採取在Smalltalk語法的字符串,並試圖把它放在一個塊並執行它,但我得到它說的錯誤:
未處理的異常:消息不被理解#+
當我做東西像
h:='[x:= 3 + 4。]'。
(BlockClosure readFromString:h)value
它工作得很好。我不明白爲什麼會發生這種情況。我猜y不是指向任何東西,它不理解+方法。但是,爲什麼塊不把y和z當作自由變量呢?
這對我來說會是這樣的痛苦。但我認爲你的回答是有道理的。謝謝! –