여러 매개 변수 절의 언어 기능에 대한 요점과이 매개 변수를 사용하는 이유를 이해하려고합니다. 예,이 두 기능의 차이점은 무엇입니까? class WTF {
def TwoParamClauses(x : Int)(y: Int) = x + y
def OneParamClause(x: Int, y : Int) = x + y
}
>> val un
감안할 때 고차 기능 단위 incr ~ call, 람다를 사용하지 않고 : (fun() -> incr 1)? 분명히 함수가 "완전히 적용되었습니다"이므로 (incr 1)을 전달하면 작동하지 않습니다. 편집 는 명확히하기 위해 : 나는 궁금하네요은 함수가되도록, 기능을 카레 할 수있는 방법이 있는지 : unit -> 'a.
이미 다른 곳에서 묻는다면 용서해주십시오. 함수 값 및 암시 적 매개 변수와 관련된 Scala 구문 질문이 있습니다. 스칼라의 커링 기능에 익숙해 져서 편안합니다. 예를 들어 내가 합 기능이 있고 암시 두 번째 인수 만들고 싶었다 경우 : scala> def sum(a: Int)(implicit b: Int) = a + b
sum: (a: Int)(imp
나는 이해할 수없는 이상한 상황에 처해있다. 저는 "Programming in Scala"책을 읽고 있습니다, Ch. 9. 의이 나는 카레 기능을 가지고 있다고 가정 해 봅시다 : 나는 경우, withThis(5){
(x) => {println("Hello!"); println(x); }
}
// Outputs
Before
Hello!
5
저는 커닝 기술이 무엇인지에 대한 많은 문서와 질문을 보았습니다. 그러나 실제로 그것을 사용하는 이유에 대한 정보는 거의 찾지 못했습니다. 내 질문은, 무엇 currying의 장점은 무엇입니까? 아마도 기존의 메소드 호출보다 currying이 더 나은 예제를 제공 할 수 있습니다. 나는 태양이 올라가고있는 동안 C++에서 일하기 때문에, 현재까지 언어로 땜
은 내가 함수 호출 주어진 true 또는 false로 설정하는 부울 기본 유형을 카레 수 있다고 생각하지만, 내가 이 특성으로 업데이트 예상하는 방법 작동하지 않는 것 has 'Lock' => (
is => 'ro',
isa => 'Bool',
traits => ['Bool'],
default => 0 ,
에 카레 생성자 그들은 그 잘 혼합하지 않는 것 : 문제는 그 패턴 매칭이다 B(1)("1") match {
case B(a)(b) => print("B")
case C() => print("C")
}
과 : abstract class A
case class B (var a: Int)(var b: String) extends A