types - ocaml 记录类型和 null

标签 types ocaml record

我正在尝试定义类型,如:

输入 aaa = NULL | {a:整数; b: 整数};;

但是编译器不允许这样做。我不确定我们不能将记录类型与其他任何类型混合的原因。

如果它是记录类型或空记录,我需要匹配一个值,并且我厌倦了创建像 {a = -999; 这样的虚拟记录; b = -999}。

有没有更好的办法 ?

最佳答案

定义的“记录”部分必须以单独的类型完成。然后,如果您想表达“无”或“某些值”,则可以将其包装在“选项”类型中。

type aaa = {a: int; b: int}
type bbb = aaa option

关于types - ocaml 记录类型和 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1998757/

相关文章:

types - OCaml 类型转换的区别

c++ - Ada Variant Record 能否与 C++ union 二进制兼容?

javascript - Javascript 如何知道变量的类型?

typescript - 使用字符串访问 TypeScript 可选对象属性

php - PHP7 中的标量和严格类型是性能增强功能吗?

module - Ocaml破坏性替换错误

c# - Oracle 期望什么格式的日期?

ocaml - 结合参数多态性和多态变体(反引号类型)

javascript - 如何停止由 chrome.tabCapture API 在 chrome 中启动的捕获媒体流

mysql - 根据最低 ID 获取记录