簡體   English   中英

在數組中插入元素時同時發生內存訪問錯誤

[英]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)
        }
    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM