![]() |
1
12
问题不在于这个
我认为下面的隐式自由示例(也不使用诸如
这将使用
实际上它将使用
无法编译:
现在我们可以让它看起来更像您的原始代码:
失败的原因与您看到的错误相同:导入的隐式转换被封闭类中同名的定义隐藏。 脚注1你问了以下问题:
隐含物名称 总是 . 这就是语言的工作方式。例如:
我们所做的是定义一个隐式值来隐藏
脚注2我认为这里可能存在编译器错误,至少就错误消息而言。如果你在我上面的第二个版本中稍微改变一下,例如:
你会得到一个更合理的信息:
在我看来,这几乎肯定是编译器
应该
告诉你你原来的案子。我也不知道为什么隐式转换会被考虑,但是它是,正如您可以知道的,如果您在repl中运行代码
所以看起来含蓄在另一个上面消失了
|
![]() |
2
2
不知道这算不算答案 (也许对编译器内部有更多了解的人可以给出更详细的解释) ,但在对您的代码进行了一段时间的分析后,我发现了一些问题,我认为这是错误的根源。 鉴于:
然后:
生产:
我认为这意味着,隐式转换是隐藏的,因为它的名称与universal冲突
够古董了,这行。
|
![]() |
mdedetrich · 可遍历抽象时的发散隐式展开 7 年前 |
![]() |
Than21 · scala确保块中的隐式转换失败 7 年前 |
![]() |
Ivan · 如何在Python中隐式地将变量传递给导入的函数? 7 年前 |
|
Théo Bontempelli · 导入Spark中的隐式项无效 7 年前 |
![]() |
mForest · trait的隐式JsonWriter不工作 7 年前 |
![]() |
user1700890 · 在tensorflow中访问隐式张量 7 年前 |
![]() |
Vasiliy Ivashin · 从类实例导入泛型隐式 7 年前 |
![]() |
perotom · Scala泛型隐式val 7 年前 |