2014-04-08 1 views
0
let add_information info = match info with 
    (int * int * int) -> int + int + int 
;; 

let result = add_information (1, 2, 3);; 

print_int result;; (* should print 6 here *) 

나는 당신이리스트와 같이 튜플을 매치 할 수 있다고 믿는다. 정확한 형식을 모르겠습니다. ,의 구분OCaml 매칭 튜플

답변

4

:

let add_info = function 
    | a, b, c -> a + b + c 

튜플 매칭 반박 할 수없는 때문에

- 즉, 일치가 실패 할 방법이 없다 - 당신은 또한 let 또는 함수 인수에 튜플을 결합 할 수 있습니다

let a, b, c = calc_tuple() in a + b + c 
+2

또는', add add_information (a, b, c) = ... '와 같은 함수 인수 내에서 일치 시키십시오. – nlucaroni

+0

답해 주셔서 감사합니다 – user3509086

1

당신은 또한라는 새로운 변수를 선언 할 수있는 일 같은 :

let d,e,f = info in 
    d+e+f;;