小编Fel*_*oni的帖子

OCaml,`type `!+'at` 中 `!+` 的含义

我目前正在学习 OCaml,尤其是函子。map.mli我从标准库中查看,在第 70 行左右,有:

type key
(** The type of the map keys. *)

type !+'a t
(** The type of maps from type [key] to type ['a]. *)

val empty: 'a t
(** The empty map. *)
Run Code Online (Sandbox Code Playgroud)

我知道这key是映射中使用的密钥的类型(或者更确切地说是它的签名,因为我们在文件中.mli),并且'a t是映射本身的(多态/抽象)类型。不过我想知道!+有什么用。我尝试寻找一些有关它的文档,但不幸的是没有找到任何文档。

如果可能的话,我希望得到有关此问题的解释和/或相关文档/教程的链接。

提前致谢。

ocaml types signature covariance type-declaration

13
推荐指数
1
解决办法
1246
查看次数

标签 统计

covariance ×1

ocaml ×1

signature ×1

type-declaration ×1

types ×1