を含めることができるようにScalaの中のすべての数のクラスのサブタイプであるジェネリック型を作成する私は、私が取り扱っておりますことを保証するために、数値(のジェネリック型ビーイングサブクラスでジェネリッククラスを作成しようとしています数字の場合) と私は "class NuVector[T<:Numeric[T])
"をクラスdefとして試してみました。スカラ:それはどのように比較する方法
今、私はそれにPartiallyOrdered[T]
を追加したいです。私は次のようにしました:
class NuVector[T<:Numeric[T]) extends PartiallyOrdered[T]
{
/** Array that stores the vector values.
*/
val v = new Array [T] (_length)
/** Range for the storage array.
*/
private val range = 0 to _length - 1
def compare(x:T,y:T)(implicit res:Numeric[T]) :Int=
{
res.compare(x,y)
}
def tryCompareTo [B >: NuVector [T]] (b: B)
(implicit view$1: (B) => PartiallyOrdered [B]): Option [Int] =
{
compare(x,y)
}
implicit def castT2Ordering(x:T):Numeric[T]=x.asInstanceOf[Numeric[T]]
implicit def castB2NuVector [B>:NuVector[T]] (b:B): NuVector[T]=
{
b.asInstanceOf[NuVector[T]]
}
}
コンパイル中です。 コンパイル中に私が取得していますエラーは次のとおりです。私は使用しています
could not find implicit value for parameter res:Numeric[T]
Scalaのバージョンは2.8
すべてのヘルプは大歓迎です。
おかげで、
〜タイガー。
バグか自分の定義に問題があるかどうかはわかりません。
Scala2.8の正確なバージョンは何を使用していますか?これはチケット2274と関連していますか? 'クラスNuVector [T:数値]'(http://lampsvn.epfl.ch/trac/scala/ticket/2274) – VonC