| 이전 주제 보기 :: 다음 주제 보기 |
| 글쓴이 |
메시지 |
노건일 손님
|
올려짐: 2009년9월15일 13:18 주제: 함수 선언시 type관련 질문입니다 |
|
|
함수를 선언할때 type을 미리 결정할 수 있나요?
예를들면,
let sum(x,y) = x+y
라고 한다면 x와 y를 integer형태로만 입력받도록 지정해주는 방법이 있을까요?
(저대로라면 '+' 연산자때문에 int 형태로 고정되긴 하겠지만,
그 밖의 방법으로 선언해주는 방법이 있는지 궁금합니다~ ) |
|
| 위로 |
|
 |
허기홍
가입: 2007년 9월 27일 올린 글: 231
|
올려짐: 2009년9월15일 14:05 주제: |
|
|
Ocaml은 타입을 자동으로 유추합니다.
그런데 타입을 프로그래머가 명시해도 되지요.
컴파일 할 때 자꾸 타입 에러가 있다고는 하는데 프로그램이 복잡해서 어디가 잘못되었는지 모를 때는 이런 명시적 타입 선언이 도움되기도 합니다.
이렇게 할 수 있습니다.
x와 y가 정수란 것을 명확히 하고 싶으시다면
| 코드: | | let sum ((x:int), (y:int)) = x + y |
sum의 타입 조차도 쓰고 싶으시다면, sum은 함수 타입이죠?
| 코드: | let sum : int -> int -> int
= fun x y -> x + y |
이처럼 쓰시면 sum의 타입, x, y의 타입까지 한방에 해결됩니다. |
|
| 위로 |
|
 |
|
|
새로운 주제를 올릴 수 없습니다 답글을 올릴 수 없습니다 주제를 수정할 수 없습니다 올린 글을 삭제할 수 없습니다 투표를 할 수 없습니다
|
Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group Translated by kss & drssay
|