Eq a => [a] -> [(Int,a)]
我不知道“Eq”是什么意思或者有什么作用,因此我不知道整个定义的含义。
[a] -> [(Int,a)]
中使用的类型 a
的限制条件: 它要求必须为 Eq
类型类定义一个实例。基本上,具有 Eq
实例的类型支持相等和不相等的操作符,(==)
和 (/=)
。如前所述,类型为a的项目必须属于Eq类型类。 Eq类型类定义了可以使用'=='运算符/函数与其他类型进行比较相等的类型。
这意味着您的函数仅以列表形式接受'a'项目作为其唯一参数。
[a] is a list of types a
返回一个(Int, a)对的列表,即一个由2元组组成的列表,其中元组中的第一项是Int类型,第二项与传递给函数的列表相同。
(我不是母语为英语的人,抱歉:))
Ord
更为严格。 - Don Stewart