たけ(tk)です

[ruby-list:35601] Re: Rational#to_int← String#center にて
matz / ruby-lang.org (Yukihiro Matsumoto) さん曰く:
> 4/3は「3ぶんの4」であって1ではない以上 to_int を定義しておく
> のは変だと思います。to_intってのはその値は整数として意味があ
> るという意味で、整数に変換するという意味ではないので。

http://www.ruby-lang.org/ja/man-1.6/?cmd=view;name=Object

には次のように書いてあるんですけど・・。

> to_int
> 
> オブジェクトの整数への暗黙の変換が必要なときに内部で呼ばれます。

p "OK/NG"[0,2.5]  #=> "OK"

  Float だとうまくいくのは何故なんでしょう?
 やはり、特別扱い?
 「暗黙の変換が必要なとき」というのはどういう場面なのでしょうか?

 Float でうまく行くのと同様の仕組みで Rational でもうまくいく、と言うの
が良いと思います。

 * Float#to_int、Rational#to_int で処理すべきではないか? という意見。

Take_tk = KUMAGAI Hidetake
たけ(tk)=熊谷秀武