[英]Cannot call use class name directly to map type after adding a companion project
[英]Is map() call by name?
如果查看“按名称参数”的规范:
4.6.2名称参数
ParamType ::= '=>' Type
值参数的类型可以以
=>
为前缀,例如x: => T
这样的参数类型就是无参数方法类型=> T
这表明相应的参数不在函数应用程序时评估,而是在函数中的每次使用时进行评估。 也就是说,使用名称调用来评估参数
那不,它不是定义上的“按名称呼叫”。
map
是一个高阶函数,它接受从A
到B
的函数。 它不是“按名称调用”,因为它接受类型参数A
必须理解的是,按名称进行的呼叫不会在呼叫站点进行评估,而只会在调用时进行评估。 它只是用于传递() => A
(A Function0[A]
)的语法糖,该函数不带参数并且返回A
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.