7
A
回答
12
没有,因为绑定的情况下实际上是一个额外的隐含参数的简写。
例如:
def sort[A : Ordering](xs: Seq[A])
为
def sort[A](xs: Seq[A])(implicit ordering: Ordering[A])
的简写形式,这不能在类型定义来表示。
12
不必在类型声明中直接绑定上下文,而必须有一个单独的值声明来表示JPP提到的隐式参数。
谁定义的类型也将提供绑定的语境证据:
trait Generic {
type U
implicit val ordering: Ordering[U] // evidence for U: Ordering
def max(u1: U, u2: U) = List(u1, u2).max
}
def concrete[T: Ordering] = new Generic {
type U = T
val ordering = implicitly[Ordering[T]]
}
assert(concrete[Int].max(1,3) == 3)
+2
这应该是被接受的答案 – 2016-04-22 11:57:56
相关问题
- 1. 使用上下文绑定更高固定类型?
- 2. 使用类型别名定义类型别名
- 3. 的std ::绑定类型别名
- 4. ui5中的绑定,上下文,上下文绑定和绑定上下文
- 5. Wicket:类别上的绑定模型
- 6. 使用CodeDom指定类型别名
- 7. 为什么在使用上下文时必须指定上下文类型?
- 8. 使用上下文创建窗口(使用定义列名称和类型)
- 9. 混淆上限类型绑定和下限类型
- 10. 名称jdbc未在Tomcat中的上下文中绑定
- 11. 名称绑定在当前上下文中不存在
- 12. 名称'绑定'在当前上下文中不存在
- 13. 使用绑定来强制原型函数的上下文
- 14. 绑定匿名类型对中继
- 15. 使用类型别名与嵌套类
- 16. 更高版本类型的上下文绑定?
- 17. 看看是否Ninject激活上下文绑定到类型
- 18. 的约束不共享相同的变量绑定的行为,上下文类型别名
- 19. 如何使用上下文绑定到一个类
- 20. 使用上下文绑定到一个类
- 21. NameNotFoundException:在此上下文中未绑定名称jdbc
- 22. Java EE异常:在此上下文中未绑定名称java:comp
- 23. javax.naming.NameNotFoundException:在此上下文中未绑定名称[jdbc/FsEDBUser]
- 24. 如何使用Ninject上下文绑定绑定多个实现
- 25. 引起︰javax.naming.NameNotFoundException - 名称[类/对象]没有绑定在此上下文中
- 26. javax.naming.NameNotFoundException:名称“用户的数据库名称”未绑定在此上下文中?
- 27. ElasticSearch无法识别上下文类型头与编码定义
- 28. java:comp/UserTransaction不使用btm和spring绑定在上下文中
- 29. 是否在Scala中使用上下文绑定或隐式ev
- 30. 使用模型绑定在MVC3中上传多个文件
感谢。这是有道理的。 – 2012-03-14 07:31:37