Swift 致命错误:无法索引空缓冲区

Swift 致命错误:无法索引空缓冲区,swift,core-data,Swift,Core Data,我声明一个全局变量_dataArray: var _dataArray : Array<AnyObject> = Array(); 从控制台中,我可以看到这个数据数组中有20个对象。 但在下面的函数中,_dataArray的计数为0。为什么 @IBAction func endorseButton(sender: AnyObject, forEvent event: UIEvent) { println(_dataArray.count) let touch

我声明一个全局变量_dataArray:

    var _dataArray : Array<AnyObject> = Array();
从控制台中,我可以看到这个数据数组中有20个对象。 但在下面的函数中,_dataArray的计数为0。为什么

@IBAction func endorseButton(sender: AnyObject, forEvent event: UIEvent) {
    println(_dataArray.count)
    let touches = event.allTouches()
    let touch: AnyObject? = touches?.anyObject()
    let currentTouchPosition = touch?.locationInView(self.tableView)
    let indexPath = self.tableView.indexPathForRowAtPoint(currentTouchPosition!)?
    if let ip = indexPath {
        var data:NSManagedObject = _dataArray[ip.row] as NSManagedObject
    }
}

问题在于这一行:

let _dataArray = context.executeFetchRequest(request, error: nil)!
您声明本地
\u数据数组

您应该省略

_dataArray = context.executeFetchRequest(request, error: nil)!
_dataArray = context.executeFetchRequest(request, error: nil)!