6

それを実装する2つの異なる方法があります。

1つはもっと短い

implicit def toR1(s:String) = new { def getLength = s.length)}

2番目はもっと長い

class R2(s:String){def getLength2 = s.length)}
implicit def toR2(s:String) = new R2(s)

どちらがいいですか?

4

1 に答える 1

11

最初のバージョンは構造型を使用します。短くて読みやすいコードを記述できるようになりますが、構造型の欠点は、構造型でメソッドを呼び出すときに実行時にリフレクションが使用されることです。リフレクションを介してメソッドを呼び出すと、メソッドを直接呼び出すよりも遅くなります。

詳細については、このブログ投稿 (私が作成) を参照してください。

于 2012-02-22T21:15:38.597 に答える