我已經編寫了許多類型爲out_channel -> 'a -> unit
的漂亮打印機,現在我想要一段代碼通過使用漂亮的打印機從值中獲取字符串。通過使用漂亮的打印機從值中獲取字符串
舉例來說,我已經實現了以下功能:
type t =
{ x: int;
y: int }
let co = { x = 4; y = 5 }
let print (chan: out_channel) (co: t) : unit =
Printf.fprintf chan "(%d, %d)" co.x co.y
我覺得功能Printf.sprintf
可以幫助我得到字符串(4, 5)
。我試過Printf.sprintf "%a" print co
,它在print
:This expression has type out_channel -> t -> unit but an expression was expected of type unit -> 'a -> string
處給了我一個錯誤。
有沒有人知道如何提醒這條線,或沒有人有一個解決方案,而不是sprintf
?
這不是我想要的。我想我的功能'print'使用... – SoftTimur
我不不認爲這是可能的。如果有人會做你想做的 - 我真的很想看到結果。 – Kakadu