Вам не нужно ничего проверять
p = Person()
создание нового объекта Person без начальных значений означает, что все свойства равны нулю, поэтому следующие проверки не нужны, мы уже знаем, что они равны нулю
if let name = p.name {
if let age = p.age {
Я бы посоветовал вам добавить конструктор с параметрами, чтобы вы могли напрямую устанавливать свойства
Либо с обязательными значениями, чтобы потом не приходилось проверять nil
init(name: String, age: Int) {
self.name = name
self.age = age
}
или с необязательными значениями
init(name: String?, age: Int?) {
self.name = name
self.age = age
}
но тогда вам нужно проверить
var name: String?
var age: Int?
//...other code
let p = Person(name: name, age: age)
if let personName = p.name {
}
if let personAge = p.age {
}