私はいくつかのパラメーター化されたクラス C[T] を作成しています。タイプ T の特性のいくつかの要件を作成して、クラスのパラメーターにできるようにしたいと考えています。T がトレイトまたはクラスから継承されたと言いたいだけなら (順序付けの場合と同様)、簡単です。しかし、いくつかの機能も実装したいと考えています。
たとえば、定義済みの型の多くが MinValue と MaxValue を実装しているのを見てきました。型 T にもこれらを実装したいと思います。暗黙の関数を定義するだけのアドバイスをいくつか受け取りました。しかし、すでに実装されている場合に、すべてのユーザーがこれらの機能を実装することを余儀なくされるのは好ましくありません。私も自分のコードにそれらを実装することができましたが、それは貧弱な迅速な修正のようです.
たとえば、ヒープを定義するときに、ユーザーが空のヒープを構築できるようにしたいと考えています。これらの場合、型 T が持つことができる最小値で値を初期化したいと考えています。明らかに、このコードは機能しません。
class Heap[T](val value:T,val heaps:List[Heap[T]]){
def this()=this(T.MinValue,List())
}
また、本当に優れたオンライン Scala 2.8 リファレンスについてアドバイスをいただければ幸いです。