首页 文章

在SML中进行类型转换

提问于
浏览
7

我是SML的新手,我使用的是SMLNJ方言 .

出于某种目的,我一直试图将类型转换为3到3.0(int到real) .

无法找到出路 . 我怎样才能做到这一点?如何在类型之间进行转换?

2 回答

  • 5

    您可以使用函数 real (或 Real.fromInt )将 int 转换为 real .

    有关详细信息,您可以在顶级环境here中查看可用功能列表,并查看Basis库here的概述 .

  • 12

    SML没有类型转换 . 类型之间的任何映射都需要通过函数来完成 .

    real(3) 外观和行为很像C风格的类型转换,但 real: int -> real 只是标准基础中的另一个功能 . 另一方面, int(3.0) 不起作用,因为 int 函数不存在 .

    通常,当您需要在类型之间进行转换时,您只需挖掘库以获得适当的功能 . 在 real -> int 案例中,只需在top level environment中搜索"real -> int",就会出现 roundtruncfloorceil .

相关问题