gpt4 book ai didi

ios - 分配一个新的带有 nil 属性的 swift 类对象返回我 nil 对象

转载 作者:行者123 更新时间:2023-11-28 12:40:55 24 4
gpt4 key购买 nike

我正在尝试从 Objective-C 和一个 swift 类创建一个新的 swift 类对象,其中初始化参数是可选的。

这是我要初始化的类,

@objc
public class ClassStatus: NSObject {
public private(set) var prop1: DemoClass?
public private(set) var prop2: DemoClass2?

public override var description: String {
return "\(prop1)"
}

public init(prop: DemoClass?) {
super.init()
self.prop1 = prop
}

public convenience init(propA: DemoClass?, propB: DemoClass2) {
self.init(prop: propA)
self.prop2 = propB
}
}

来自 Swift,

let statusObj = ClassStatus(prop: nil)

来自 Objective-C

ClassStatus *connState = [[ClassStatus alloc]initWithProp:nil];

为什么在这两种情况下创建的对象都是 nil,而不是返回一个预期属性为 nil 的有效对象。

编辑:打印该对象将为您提供零。在这里,我实际上是在尝试使用该对象,并在该对象中查找该属性是 nil 还是有效,我将在此基础上进一步进行。这里的情况是,为什么对象变成 nil 而不是创建一个属性为 nil 的有效对象。

编辑 2:这不是一个有效的问题,因为 nil 的结果实际上是由于描述方法的覆盖而发生的。对象创建按原样进行。

最佳答案

正如 Martin R 所说,它只是打印描述。ClassStatus 已启动,它不是零。我知道这不是解决方案,但我没有足够的声誉来发表评论..!! :-)

关于ios - 分配一个新的带有 nil 属性的 swift 类对象返回我 nil 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39407483/

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