我試圖讓我的頭圍繞歧視工會和記錄類型;特別是如何組合它們以獲得最大的可讀性。這裏有一個例子 - 比如說一個運動隊可以有積分(聯賽積分和淨勝球),或者可以暫停聯盟,在這種情況下,它沒有積分或者淨勝球。我試圖表達如下:結合歧視工會與記錄類型
type Points = { LeaguePoints : int; GoalDifference : int }
type TeamState =
| CurrentPoints of Points
| Suspended
type Team = { Name : string; State : TeamState }
let points = { LeaguePoints = 20; GoalDifference = 3 }
let portsmouth = { Name = "Portsmouth"; State = points }
問題出現在最後一行的末尾,我說'狀態=點'。我得到'表達預期有類型的TeamState,但這裏有類型的點'。我該如何解決這個問題?
您的美麗!謝謝你。 – Kit 2012-04-12 16:08:36
(允許時將標記爲答案 - 6分鐘!) – Kit 2012-04-12 16:09:00