ocaml手册第8 章“语言扩展”描述了“内联记录”(8.17):
现在可以使用与记录相同的语法来定义 sum 类型构造函数的参数。允许可变和多态字段。支持 GADT 语法。可以在单个字段上指定属性。[...]
我正在寻找具有多态变体的内容:
# type a = B of {x:int; mutable y:int} ;;
type a = B of { x : int; mutable y : int; }
# type b = `A of {u:int; mutable v:int} ;;
Line 1, characters 9-10:
Error: Syntax error
但这不起作用,所以现在我使用显式辅助记录类型来代替......据我所知,这既需要更多内存,又有点慢。
我也可以通过多态变体获得这个很酷的功能吗?