是否可以在scala中为某些Numeric[T]
定义值类?我试过这样的事情:
case class Inches[T <: Numeric[T]](value: T)(implicit num: Numeric[T]) extends AnyVal
但是我收到value classes can have only one parameter
的编译错误。
有没有办法绕过这个?
事先谢谢。
答案 0 :(得分:6)
您可以将Numeric
参数从类移动到需要它的方法:
case class Inches[T](value: T) extends AnyVal {
def foo()(implicit num: Numeric[T]) = ...
}
(T <: Numeric[T]
错了。)