我有这个程序:
object B{
def apply[T](c:T)={}
}
object C{
type T
def apply(c:T)={}
}
object A extends App{
val d=B{println(1);2}
val e=C{println(1);2}
}
线
val e = C{println(1);2}
告诉我错误:类型不匹配,预计到帐,实际:2
所以我为什么不能写
type T
def apply(c:T)
似乎与]相同>
apply[T](c:T)
以及我写的时候T是什么类型
val d=B{println(1);2}
我可以在这里写很多行!
因为T表示通用,所以它可以是Int,String,用户定义的类Apple,Orange ...
以及什么是
println(1);2
是否有类型的“代码行”?
谢谢!
我有这个程序:对象B {def apply [T](c:T)= {}}对象C {类型T def apply(c:T)= {}}对象A扩展了App {val d = B { println(1); 2} val e = C {println(1); 2}}行val e = C {...
块的类型是该块上最后一个表达式的类型。所以