呵呵,谢谢啊
@kenshin54 就是子进程的 STDIN 和 STDOUT 连接到了父进程的 pipe 上。 这个我知道,我的意思是为啥父进程的输入又成了子进程的输出
那为何子进程的输出变成了父进程的输入的啊,请教下具体的过程@ChanceDoor
这个作用我知道,我意思使用了 caller 都把异常点和调用他的方法在栈回溯中删掉了,这样做的目的是什么
呵呵,是的,就是 ls 说的意思,谢谢啊
呵呵,我说的是 caller[1..-1],不是你说的 caller(1..-1),不是你说的这个意思,不过谢谢你啊,我弄清楚了
class KaraokeSong
#...
def to_s
"KS: #@name--#@artist(#@duration){#@lyrics}"
end
end
song = KaraokeSong.new("My Way", "Sinatra", 225,"And now,the...")
song.to_s ->"KS: My Way--Sinatra(225){And now,the...}"
原来直接把父类的方法 copy 过来
后来采用 super 引用 class KaraokeSong <Song
def to_s
super+"{#@lyrics}"
end
end
song = KaraokeSong.new("My Way", "Sinatra" ,225, "And now,the...")
song.to_s ->"Song:My Way--Sinatra(225){And now,the...}"
我的意思是他最后说段那段话不太恰当 super 调用父类的方法,如果修改 Song 类以毫秒保存时长,还不是一样会显示 3750 分钟