Functional programming 具有多个文件的记录的可变字段

Functional programming 具有多个文件的记录的可变字段,functional-programming,ocaml,mutable,imperative-programming,Functional Programming,Ocaml,Mutable,Imperative Programming,我正在处理多个文件,但一个可变字段有问题。 在file1.ml中,我声明: type mytype = { mutable numbers : int list; } 因此,在file2.ml中,我有mytype类型的元素。但是,当我试着做: myElement.numbers 返回以下错误:错误:未绑定记录字段标签号 谢谢,欢迎提供任何帮助。使用文件2中的完全限定名:myElement.File1.numbers 或者将打开的文件添加到您的文件中 或者使用本地模块打开myElem

我正在处理多个文件,但一个可变字段有问题。 在file1.ml中,我声明:

type mytype = {
     mutable numbers : int list;
}
因此,在file2.ml中,我有mytype类型的元素。但是,当我试着做:

myElement.numbers
返回以下错误:错误:未绑定记录字段标签号


谢谢,欢迎提供任何帮助。

使用文件2中的完全限定名:
myElement.File1.numbers

或者将
打开的文件
添加到您的文件中


或者使用本地模块打开myElement中的文件2。数字使用第一个选项!但是,我忘了解释我的File1.ml有一个模块,而myType被插入到“myModule”中。如何用“打开文件”修复它?“打开myModule”?您应该能够使用
openfile1.myModule
。从风格上讲,在代码中只使用很少的
open
。否则,您必须非常努力地保持名称空间中没有冲突的名称。如果您刚刚开始使用OCaml,您可以稍后再考虑这个问题。请注意,这个“问题”应该随着OCaml的未来版本而消失(上次我尝试它时,开发树中已经有了工作代码)。考虑这个问题的一种方法是,您定义的不是录制,而是录制选择器。因此,当您使用选择器时,必须声明其完整路径。