在数组中插入元素时同时发生内存访问错误
Simultaneous memory access error while inserting element in array
我在以下方法中遇到同时内存访问错误。任何人都可以建议我应该如何修改它以消除此错误并保持功能完整。
func add(myItem:String, atIndex index:Int){
if self.myItems!.count-1 > index {
self.myItems?.insert(myItem, at: index)
}
else{
while index > self.myItems!.count {
//getting error in this insert statement below
self.myItems?.insert(myItemPlaceHolder, at: self.myItems!.count)
}
self.myItems?.append(myItem)
}
}
数组是这样定义的var myItems : [String]?
如有任何建议,我们将不胜感激。
尝试更改 var myItems : [String] = [String]()
并对您的函数进行适当的更改,如下所示
func add(myItem:String, atIndex index:Int){
if self.myItems.count-1 > index {
self.myItems.insert(myItem, at: index)
}
else{
while index > self.myItems.count {
self.myItems.insert(myItemPlaceHolder, at: self.myItems.count)
}
self.myItems.append(myItem)
}
}
我在以下方法中遇到同时内存访问错误。任何人都可以建议我应该如何修改它以消除此错误并保持功能完整。
func add(myItem:String, atIndex index:Int){
if self.myItems!.count-1 > index {
self.myItems?.insert(myItem, at: index)
}
else{
while index > self.myItems!.count {
//getting error in this insert statement below
self.myItems?.insert(myItemPlaceHolder, at: self.myItems!.count)
}
self.myItems?.append(myItem)
}
}
数组是这样定义的var myItems : [String]?
如有任何建议,我们将不胜感激。
尝试更改 var myItems : [String] = [String]()
并对您的函数进行适当的更改,如下所示
func add(myItem:String, atIndex index:Int){
if self.myItems.count-1 > index {
self.myItems.insert(myItem, at: index)
}
else{
while index > self.myItems.count {
self.myItems.insert(myItemPlaceHolder, at: self.myItems.count)
}
self.myItems.append(myItem)
}
}