您可以直接将非隐式 val 作为参数传递给需要隐式的函数吗?
Can you directly pass a non-implicit val as argument to a function expecting an implicit?
请原谅脑子一片空白。
class Bar(implicit foo: Foo)
class Foo {
implicit val self = this
lazy val bar = new Bar
}
我们能否将 Bar
的实例化简化为单个语句,其中 this
非常 明确地 作为构造函数参数?
我的问题也适用于传递任何值,而不仅仅是本例中的 this
。
构造函数中的隐式参数是此处第二组参数的一部分(第一组为空),因此您可以
val bar = new Bar()(new Foo)
请原谅脑子一片空白。
class Bar(implicit foo: Foo)
class Foo {
implicit val self = this
lazy val bar = new Bar
}
我们能否将 Bar
的实例化简化为单个语句,其中 this
非常 明确地 作为构造函数参数?
我的问题也适用于传递任何值,而不仅仅是本例中的 this
。
构造函数中的隐式参数是此处第二组参数的一部分(第一组为空),因此您可以
val bar = new Bar()(new Foo)