1
是否有可能重寫'puts'方法並將其替換爲調用'puts'兩次的函數?Ruby覆蓋類方法
例如:
class IO
def puts str
puts str
puts str
end
end
我知道這個例子是愚蠢的,但我需要別的東西。基本上,我想重寫一個函數,但我想重寫函數將調用包含到原始的重寫函數中。
是否有可能重寫'puts'方法並將其替換爲調用'puts'兩次的函數?Ruby覆蓋類方法
例如:
class IO
def puts str
puts str
puts str
end
end
我知道這個例子是愚蠢的,但我需要別的東西。基本上,我想重寫一個函數,但我想重寫函數將調用包含到原始的重寫函數中。
class IO
alias puts_orig puts
def puts str
puts_orig str
puts_orig str
end
end
您確定要在與定義的類相同的類中覆蓋它,而不是在實例上的方法中進行子類化或混合嗎? – Phrogz
[當猴子修補方法時,可以從新實現中調用重寫的方法](http://stackoverflow.com/questions/4470108/when-monkey-patching-a-method-can-you-call -the-重寫法-從最新-i)的 –