게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

함수 선언시 type관련 질문입니다

 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2009)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
노건일
손님





올리기올려짐: 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의 타입까지 한방에 해결됩니다.
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기 글 올린이의 웹사이트 방문
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2009) 시간대: GMT + 9 시간(한국)
페이지 11

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay