Ios 传递到方法时,Int参数更改为0

Ios 传递到方法时,Int参数更改为0,ios,swift,methods,parameter-passing,Ios,Swift,Methods,Parameter Passing,我有一个非常奇怪的问题,我希望有人能解释一下。我有一个类级别的属性,然后将其传递到另一个类中的方法中,在传递该属性时,该属性等于我期望的值,但一旦传递到该方法中,该值将更改为0?没有逻辑上的理由说明为什么会发生这种情况。请参阅下面的屏幕截图了解更多内容 我期待着听到你的建议 编辑:根据要求,代码如下: Networking.updateExistingEntry(RegistrationDataManager.get.currentRegistrationModel(), entryId: en

我有一个非常奇怪的问题,我希望有人能解释一下。我有一个类级别的属性,然后将其传递到另一个类中的方法中,在传递该属性时,该属性等于我期望的值,但一旦传递到该方法中,该值将更改为0?没有逻辑上的理由说明为什么会发生这种情况。请参阅下面的屏幕截图了解更多内容

我期待着听到你的建议

编辑:根据要求,代码如下:

Networking.updateExistingEntry(RegistrationDataManager.get.currentRegistrationModel(), entryId: entryId) { (success) -> Void in
    print(success)
}

class func updateExistingEntry(registrationModel: RegistrationModel, entryId: Int, completion:(success: Bool) -> Void) {
    Alamofire.request(.PUT, Routing.Entries().URLByAppendingPathComponent("/\(entryId)"), parameters: registrationModel.map(), encoding: .JSON, headers: ["X-SessionToken":Settings.getSessionToken()!]).validate().responseJSON { (request, response, result) -> Void in
        completion(success: result.isSuccess)
    }
}

感谢大家的建议,我最终独立运行了与调试器分离的应用程序,并使用alertview向我“打印”entryId的值;这是正确的!这似乎是一个xcode错误。重新安装xcode后,一切正常。

请提供实际代码,而不是屏幕截图,它们很难阅读。如何调用updateExistingEntry,您可以共享更多代码吗?如何得出值更改为0的结论?通过在调试器中检查其值,或者在执行期间将其值打印到控制台?我问这个问题的原因是,我看到了一些非常奇怪的情况,当我在调试期间观察到的值不是我只需打印出来就能观察到的值时。谢谢Anton,然后讨论的方法使用entryId值进行网络调用,我可以从后端看到0被传入。仅仅因为代码占用的行数更少并不意味着它在任何方面都更好。