以下代码采用 2 个参数。第一个是三元组列表:三元组 (d,m,y) 用于表示日期。
第二个是一个整数,它是一个月
该代码旨在计算列表中该月份的日期出现次数
ps 我想这可能看起来像一个家庭作业问题 - 它不是。它来自我今年早些时候在 ML 中完成的一门课程,我正在尝试重做 f# 中的所有练习。所以这只是为了我的利益
let rec number_in_month (dates : (int * int * int) list, month) =
match dates with
| [] -> 0
| (_,y,_) when month = y -> 1 + number_in_month(dates.Tail, month)
| _ -> number_in_month(dates.Tail, month)
但它给出了错误:
此表达式应具有类型 (int * int * int) 列表,但此处具有类型 'a * 'b * 'c
知道我做错了什么吗?