Ruby代碼我是通過在一個字符串轉義庫一些代碼期待有一天,我遇到了一些代碼,看起來像這樣走過來:需要幫助理解從
class StringWrapper
class << self
alias new_no_dup new
def new(str)
new_no_dup(str.dup)
end
end
def initialize(str)
@str = str
end
...
end
誰能解釋究竟是怎麼回事這裏?我瞭解類< <自我部分,但我不太理解別名new_no_dup的新方法,只能在下面的新方法中調用它?另外,你爲什麼認爲作者想以這種方式來做到這一點?