我无法使用,print_endline
因为它需要一个字符串,我不(想)我有任何方法可以将我非常简单的用户定义数据类型转换为字符串.如何检查这些数据类型的变量值?
ste*_*vez 13
在许多情况下,编写自己的string_of_转换例程并不困难.这是一个简单的替代方案,不需要任何额外的库或非标准的OCaml扩展.对于我教授使用OCaml的课程,这通常是学生最简单的机制.
(如果支持对字符串的泛型转换,那将是很好的;也许OCaml派生的东西会流行起来.)
基本语言中没有任何内容可以帮助您.有一个名为OCaml Deriving的项目(以Haskell的一个特性命名)可以从类型声明中自动派生打印函数.我没有用它,但听起来很棒.
http://code.google.com/p/deriving/
一旦你有了打印类型(派生与否)的功能,你可以将它安装在ocaml顶级.这可能很方便,因为内置的顶级打印有时并不能满足您的需求.为此,请使用OCaml手册第9章中#install-printer
描述的指令.