9

scala の値クラスを自分のプロジェクトの 1 つに適用したいと考えています。これにより、特定のプリミティブ型を大きなオーバーヘッドなしで強化し (願っています)、型安全性を維持できるからです。

object Position {

  implicit class Pos( val i: Int ) extends AnyVal with Ordered[Pos] {

    def +( p: Pos ): Pos = i + p.i

    def -( p: Pos ): Pos = if ( i - p.i < 0 ) 0 else i - p.i

    def compare( p: Pos ): Int = i - p.i

  }
}

私の質問: forceの継承は、オブジェクトを使用するたびにオブジェクトOrderedの割り当てをPos行う (それによって大きなオーバーヘッドが発生する) かどうか。もしそうなら:これを回避する方法はありますか?

4

1 に答える 1