Ruby初心者質問スレPart1
■ このスレッドは過去ログ倉庫に格納されています
0757752=753
NGNGclass A
def to_s
return "#{@name} #{@lit} #{@math} #{@eng}"
end
end
とかやっておく。こうすると、 to_s は A の情報を表示した文字列になる。
to_s の s は String(文字列)だ。
表示させたい場合は、このように文字列化しておいて実際の表示関数に渡せば
いい。
all_data.each do |a|
puts a.to_s
end
などとすればいい(実際には puts や print は、引数が文字列でない時には
to_s メソッドを呼ぶことになっているので、
puts a
でも構わない)。
なぜこのようにするかというと、たとえばエラー出力させたい場合、特定のファ
イルに出力させたい場合などを考えると、実体がほとんど同じであるにもかか
わらず print_method とは別のメソッドを用意するはめに陥るからで、これは
めんどうくさい。
■ このスレッドは過去ログ倉庫に格納されています