scala 2.10 REPFL では:
>
class E(val i: Int) { def += (other: E) = i - other.i }
implicit def toE(i: Int) = new E(i)
var j = 1
j += 3
結果:
res1: Int = -2
> j
j: Int = 1
+=
以前の変換方法を使用する場合と比較して、クラス E 自体が暗黙的としてマークされている場合、通常との干渉がないことに注意してください。
うわー、この暗黙の変換がスコープ内にある場合、プログラムを完全に混乱させることができました! 意味が既に存在する場合、暗黙に変換しないようにscalaに依頼する方法はありますか?