8
我有這行代碼這給在主題行中所述的錯誤:F# - 一種參數缺少約束時,「K:比較
type trie<'k,'a> = TNode of ('a option * Map<'k,('k,'a) trie>)
我試着插入「當k:比較「我想盡一切辦法無濟於事。我只能用一個通用參數找到這個例子,而不是兩個。
由於提前,
鮑勃
我有這行代碼這給在主題行中所述的錯誤:F# - 一種參數缺少約束時,「K:比較
type trie<'k,'a> = TNode of ('a option * Map<'k,('k,'a) trie>)
我試着插入「當k:比較「我想盡一切辦法無濟於事。我只能用一個通用參數找到這個例子,而不是兩個。
由於提前,
鮑勃
試試這個:
type trie<'k,'a when 'k : comparison> = TNode of ('a option * Map<'k,trie<'k,'a>>)
我嘗試了「k之後添加約束時,我無法相信我錯過了這個可能性。你總是讓這個東西看起來很容易kvb。 :) – Beaker
@Beaker - 很高興幫助。由於約束只會影響''k',所以很容易嘗試將其放在那裏,但通用約束總是出現在整個泛型參數列表之後 - 請參閱http://msdn.microsoft.com/zh-cn/library/dd233203.aspx 。 – kvb