gpt4 book ai didi

swift - 制作模型时报错 "return from initializer without initializing all stored properties"

转载 作者:可可西里 更新时间:2023-11-01 02:18:53 37 4
gpt4 key购买 nike

我正在使用解析实现模型。

这是我的代码。

import Foundation
import UIKit
import Parse

class User {

var objectId : String
var username : String
var nickName : String

var phoneNumber : String
var preferPhoneNumber : String
var emailAddress : String
var preferemailAddress : String

var emailVerified : Bool

var createdAt : NSDate
var updatedAt : NSDate

var profile_picture : UIImage

init(objectId:String, username:String, nickName:String, phoneNumber: String, preferPhoneNumber : String, emailAddress : String, preferemailAddress : String, emailVerified : Bool){


self.objectId = (PFUser.currentUser()?.objectId)!
self.username = (PFUser.currentUser()?.username)!

if var nickName = (PFUser.currentUser()?.objectForKey("nickName") as? String){
(PFUser.currentUser()?.objectForKey("nickName") as? String)
}else{
"!NoData"
}

if var phoneNumber = (PFUser.currentUser()?.objectForKey("phoneNumber") as? String){
self.phoneNumber = (PFUser.currentUser()?.objectForKey("phoneNumber") as? String)!
}else{
"!NoData"
}

if var preferPhoneNumber = (PFUser.currentUser()?.objectForKey("preferPhoneNumber") as? String){
self.preferPhoneNumber = (PFUser.currentUser()?.objectForKey("preferPhoneNumber") as? String)!
}else{
"!NoData"
}

if var emailAddress = (PFUser.currentUser()?.objectForKey("emailAddress") as? String){
self.emailAddress = (PFUser.currentUser()?.objectForKey("emailAddress") as? String)!
}else{
"!NoData"
}

if var preferemailAddress = (PFUser.currentUser()?.objectForKey("preferemailAddress") as? String){
self.preferemailAddress = (PFUser.currentUser()?.objectForKey("preferemailAddress") as? String)!
}else{
"!NoData"
}


if var emailVerified = (PFUser.currentUser()?.objectForKey("emailVerified") as? Bool){
self.emailVerified = (PFUser.currentUser()?.objectForKey("emailVerified") as? Bool)!
}else{
"!NoData"
}

}

在我的代码中,我在制作模型期间收到“从初始化程序返回而不初始化所有存储的属性”的错误。

我试着把“return nil”放在最后,这不是解决方案。

所以我想知道如何初始化存储的属性?

或者如何解决这个错误?

最佳答案

在初始化器完成后,所有存储的属性都需要有一个值。快速浏览后,我发现至少有 3 个变量没有赋值:

var createdAt : NSDate
var updatedAt : NSDate
var profile_picture : UIImage

此外,我认为您的 if 分支也会与该概念冲突,因为在 else 情况下您会再次错过分配值的机会。

要么为所有这些字段提供默认值或真实值,要么将它们更改为可选值,例如 NSDate?NSDate!String?String!

关于swift - 制作模型时报错 "return from initializer without initializing all stored properties",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32938577/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com