【发布时间】:2013-07-30 03:28:11
【问题描述】:
是否可以在方法中定义参数 x,使得 x 的类型是泛型类型T,实现给定的函数签名(假设为def apply() : Double),而不引入新类型?
[示例] 目标是定义类似的东西(我使用临时语法只是为了说明):
def foo(x : T with def apply() : Double) = { ... }
目前,我可以引入一个新类型ApplyDouble,但这需要我将实例为合法参数的所有可能类型扩展为'foo',然后将foo的签名转换为
def foo(x : ApplyDouble) = { ... }
【问题讨论】:
标签: scala