假設這個函數:是否有可能在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