我不确定如何撰写本声明。
让dealPlayer()= Hit(Two; Spades)
错误此表达式应具有类型
type Suit = | Spades
| Diamonds
| Clubs
| Hearts
type Face = |Two | Three | Four | Five
| Six | Seven | Eight | Nine | Ten
| Jack | Queen | King | Ace
type Card = {Face: Face; Suit: Suit}
type Deal = | Hand of Card * Card
| Hit of Card
let dealPlayer() = Hit(Two; Spades)
我还是F#的新手。 请帮帮我。
答案 0 :(得分:3)
假设您希望dealPlayer
始终返回硬编码的两个黑桃,它就像这样完成:
let dealPlayer () = Hit { Face = Two; Suit = Spades }
dealPlayer
函数具有推断类型unit -> Deal
。
Card
是record type,因此您需要使用记录表达式来创建该类型的值。这是{ Face = Two; Suit = Spades }
部分。
Hit
部分是Hit
Deal
案例的案例构造函数。