为了处理在我的脚本-q(安静)选项,我这样做:清除方法体
class NoWrite
def write(*args)
end
end
$stdout = NoWrite.new if $options[:quiet]
它工作正常。
但是我想知道是否没有元编程的方法使write
方法没有意义。
remove_method
和undef_method
无法使用,因为write
方法必须定义,我只是想让它无所作为。
此外,$stderr
不会受到影响。
你也可以覆盖'#method_missing'。 – 2013-02-18 17:11:56