“命令失败,由于信号:分段错误:11” – 这是什么问题?

我做了一些研究,但仍然不知道是什么导致了我的代码中的这个错误(呃,我知道是什么原因造成的,但我不知道为什么…)

本质上,我从Parse Cloud Code中检索一个数组, results 。 然后我把它发送到ViewController2打印出一个UILabel格式的数组的一部分。 当我这样做,我得到编译器错误。 这真让我困惑!

请注意, result ,我检索的数组包含string和布尔值,这就是为什么我把它AnyObject所以我可以稍后施放特定的部分。

云代码:

 Parse.Cloud.define("checkAccountStatus", function(request, response) { var results = []; var query = new Parse.Query(Parse.User); query.equalTo("username", request.params.username); query.first({ success: function(getUserData) { if (request.params.operation == 1) { var passwordChanged = getUserData.get("passwordChanged"); var question1 = getUserData.get("question1"); var question2 = getUserData.get("question2"); var question3 = getUserData.get("question3"); results.push(passwordChanged); results.push(question1); results.push(question2); results.push(question3); } else { if (request.params.answerToQuestion1 == getUserData.get("answer1")) { results.push(true) } else { results.push(false) } if (request.params.answerToQuestion2 == getUserData.get("answer2")) { results.push(true) } else { results.push(false) } if (request.params.answerToQuestion3 == getUserData.get("answer3")) { results.push(true) } else { results.push(false) } } response.success(results); }, error: function(error) { response.error("There was an error"); } }); }); 

ViewController1代码(部分):

  var data: AnyObject! PFCloud.callFunctionInBackground("checkAccountStatus", withParameters: ["username" : self.username.text, "operation" : 1]) { (result: AnyObject!, error: NSError!) -> Void in if (error == nil) { self.data = result //... } } override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { if (segue.identifier == "reset") { var svc = segue.destinationViewController as ViewController2; svc.data = data } } 

ViewController2代码:

 @IBOutlet var question1: UILabel! var data: AnyObject! override func viewDidLoad() { super.viewDidLoad() question1.text = data[1] as String! //THIS GIVES ME THE ERROR. } 

尝试改变:

 PFCloud.callFunctionInBackground("checkAccountStatus", withParameters: ["username" : self.username.text, "operation" : 1]) { (result: AnyObject!, error: NSError!) -> Void in 

 PFCloud.callFunctionInBackground("checkAccountStatus", withParameters: ["username" : self.username.text, "operation" : 1]) { (result: PFObject!, error: NSError!) -> Void in 

与findObjectsInBackgroundWithBlock一起使用AnyObject时,发生同样的错误。 看起来类似于: 此链接是由于Parse SDK中的更改而导致的