假设这个函数:是否有可能在Scala中以其他方式进行咖喱?
def autoClosing(f: {def close();})(t: =>Unit) = {
t
f.close()
}
这个片断:
val a = autoClosing(new X)(_)
a {
println("before close")
}
是有可能咖喱第一部分?例如:
val a = autoClosing(_) { println("before close") }
这样我就可以发送执行关闭的对象,并且对它们执行相同的块?
种类繁多。 Mersi :) – Geo 2009-12-17 11:29:21
不客气。添加了几个笔记来扩大我的答案:)。不幸的是,类型inferer在这里不能推断出通配符的类型。 – 2009-12-17 11:33:28