OCaml, как преобразовать полиморфное число в число с плавающей точкой? - PullRequest
0 голосов
/ 14 сентября 2018

Я хочу вычислить полиморфное число. Я знаю о float_of_int, но я хочу преобразовать неизвестные типы (int или float) в float. Так как же мне преобразовать полиморфное число в число с плавающей точкой?

1 Ответ

0 голосов
/ 14 сентября 2018

Делая некоторые предположения относительно вашего варианта использования:

type i_or_f = Int of int | Float of float;;
let conv x = match x with Int i -> float_of_int i | Float f -> f;;

i_or_f - это полиморфный тип, представляющий собой int или float.

 utop # conv (Int 4);;
 - : float = 4.
 utop # conv (Float 4.);;
 - : float = 4.

Это то, о чем ты думаешь?

...