У меня есть этот код:Scala - как не называй унарную методу
def +(s: String) = s.headOption
val foo = +("hello")
При попытке скомпилировать его, я получаю ошибку компиляции:
Error: value unary_+ is not a member of String
val foo = +("hello")
Как я могу предотвратить компилятор от вставка вызова в String.unary_-
, но вместо этого вызов метода в области?
Там будет вопрос, почему это необходимо 'this.f (ARG)', чтобы получить неявное преобразование на 'this' (преобразование его к чему-то с 'f'), почему не' f (arg) 'достаточно. Это может быть хорошим примером, почему бы и нет. Или, может быть, они оба являются аргументом, чтобы попробовать 'this.expr' перед сбоем. –