标签: ocaml
我一直认为OCaml(:>运算符)中的强制只需要满足类型检查器,但不会导致生成任何代码。这是真的吗?
:>
答案 0 :(得分:3)
我假设您正在谈论supertype coercion,例如(expr : type :> supertype)。
(expr : type :> supertype)
是的,此操作在编译时在类型检查器中进行。在运行时没有任何事情发生,需要0次。这是因为(在OCaml中),只有在类型安全时才允许强制。所以在运行时没有什么可以检查的。