如何检查是否已设置类的所有可选成员?

时间:2016-03-16 14:43:27

标签: ios swift

我需要检查是否已经设置了我班级的所有可选属性。

我可以编写一个检查每个属性的函数,但我想知道是否有更快的方法在属性之间进行迭代,或者只是一个功能来检查是否所有类成员都已初始化。

3 个答案:

答案 0 :(得分:1)

不能那样做。

问题甚至是获取所有属性的列表,因为Swift没有反射。

但是,如果您可以使对象继承自NSObject,那么您可以使用Obj-C运行时来执行此操作(但有一些限制)。

答案 1 :(得分:0)

您可以定义存储属性

{
  "rules": {
    "leads": {
        ".read": "auth.uid == 'lead_checker'"
        "$user_id": {
            ".write": true,
        }
    }
  }
}

答案 2 :(得分:-1)

可选类型的属性会自动初始化,其值为nil,表示该属性在初始化期间故意要“无值”。因此,只需检查可选属性是否为零即可知道它是否已设置。