的阵列迭代我有结构的数组:“不能分配给”错误通过结构
for _ in 1...7 {
collectionData.append(CalendarDate(date: NSDate(), selected: false))
}
所以,当你轻按:
struct CalendarDate {
var date: NSDate?
var selected = false
}
private var collectionData = [CalendarDate]()
哪个我简单地用这样的日期填充一个collectionView,我只想遍历数据并将它们全部标记为False。
for c in collectionData {
c.selected = false ///ERROR: Cannot assign to 'selected' in 'c'
}
为什么我得到这个错误?我认为它将“c”定义为“let”,尽管我在其定义中使用了var。在这种情况下,我可以强迫c变成“var”吗?
如果我这样做,它工作正常,但我想知道我做错了什么上面:
for i in 0..<collectionData.count {
collectionData[i].selected = false
}
我不知道这个答案,所以我会张贴它作为一个评论,但你有没有尝试'为var c在collectionData'?我知道它适用于其他语言。 – EmilioPelaez 2015-03-30 22:15:09
是的,我试过了,无效的语法。太糟糕了,因为这将解决我的问题;( – 2015-03-30 22:16:20