[英]Swift error Type 'T' does not conform to protocol 'IntegerLiteralConvertible'
我想通過以下代碼片段將數字分解為其主要因子,但我不完全理解給定的錯誤消息(請參見上面的標題)。 首先,我嘗試使用字典,但是我堅持按鍵對字典進行排序。 其次,我嘗試了元組版本,但現在我陷入了編譯器錯誤。
有人可以在下面的代碼片段的最后一行看到什么地方出問題嗎?
var pfc : [(prime: Int, count: Int)] = []
pfc.append(prime: 2, count: 2)
pfc += [(prime: 3, count: 4)]
var p = 5, c = 1
pfc.append(prime: p, count: c)
在堆棧溢出中,可以找到有關String.Index的類似問題,但是答案還不足以為我提供線索。 因此,非常感謝您的幫助,在此先感謝您!
這是非常有趣的,就像Nate提到的那樣似乎很麻煩。 我可以通過一些不同的語法解決它。
var pfc : [(prime: Int, count: Int)] = []
pfc.append(prime: 2, count: 2)
pfc += [(prime: 3, count: 4)]
var p = 5
var c = 1
var tuple = (prime: p, count: c)
pfc += [tuple]
pfc
我認為您應該將元組放在兩組括號中,而不是一組。
var pfc : [(prime: Int, count: Int)] = []
pfc.append((prime: 2, count: 2))
pfc += [(prime: 3, count: 4)]
var p = 5, c = 1
pfc.append((prime: p, count: c))
我認為編譯器認為您想調用一個名為Array.append(prime: Int, count: Int)
方法,但是找不到Array
類型的方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.