5
다른 파일에 정의한 OCaml 레코드를 어떻게 사용할 수 있습니까?OCaml 레코드에 접근하기
type r = { i: int; j: int; };
와 나는 R 레코드를 사용하고자하는 파일 b.ml : 나는이 R 레코드를 정의하는 파일 a.ml을 가지고 예를 들어 보겠습니다. 뭔가가 이런 식으로 :
let s = {i = 12; j = 15;}
명확하게 작동하지 않습니다 - 나는 그것이 레코드가 정의 된 모듈에 액세스하는 것과 관련이 있다고 알고 있지만 아직 구문을 올바르게 얻지 못했습니다. 만약 어느 open A
각각 A.i
및 A.j
로 i
및 j
으로 (이에 범위로 모든 정의를 데리고) 또는 참조 할 수 있도록 a.ml 정의
Ah, hmm, ok ... 내가 이런 식으로 일하는 것이 아니기 때문에 : a.ml이 레코드 정의를 보유하게 될 것입니다 .mli는 레코드와 관련된 내용을 보유하지 않을 것이며 b.ml에서 레코드에 액세스하려고했습니다. 그런 경우 어떻게 할 것인가? 인터페이스에서 레코드를 정의 할 것인가? 어느 쪽이든, 대답 주셔서 감사합니다. – hyperboreean
예. 다른 파일에서 사용하기위한 형식 정의는 인터페이스의 일부이므로 mli 파일에 있어야합니다 (있는 경우). – sepp2k