类型类 Integral 有两个操作quot
and div
,但在 Haskell 2010 语言报告中并没有具体说明它们应该做什么。假如说div
是积分除法,什么quot
不同,或者目的是什么quot
?什么时候使用其中一个,什么时候使用另一个?
引用 Haskell 报告中的第 6.4.2 节:
The quot
, rem
, div
, and mod
如果 y 非零,类方法满足这些定律:
(x `quot` y)*y + (x `rem` y) == x
(x `div` y)*y + (x `mod` y) == x
quot
是整数除法向零截断,而结果div
被截断为负无穷大。
The div
函数通常是更自然使用的函数,而quot
函数对应于现代机器上的机器指令,因此它的效率更高。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)