Sobes.tech
Middle

Түзүмгө өзүнүн баштапкы ишке киргизгичин кантип кошсо болот, ал эми стандарттык ишке киргизгич сакталат?

sobes.tech AI

AIден жооп

Өгөгдсөн байдалд, Swift-ийн бүтэцүүд өөрийнхөө гишүүний автоматаар үүсгэгчийг авдаг бөгөөд хэрвээ та өөрийн үүсгэгчийг тодорхойлж байвал, автомат үүсгэгчийг авахгүй болно.

Өөрийн үүсгэгчийг нэмсэн тохиолдолд автомат гишүүний үүсгэгчийг хадгалахыг хүсвэл, тэдгээрийг extension (өргөтгөл) дотор байршуулж болно. Extension-д тодорхойлсон үүсгэгчүүд автомат гишүүний үүсгэгчийг цуцлахгүй.

struct Person {
    let name: String
    let age: Int
}

extension Person {
    // Таны үүсгэгч
    init(name: String) {
        self.name = name
        self.age = 0 // Үндсэн утга
    }
}

// Автомат гишүүний үүсгэгчийг ашиглах
let john = Person(name: "John", age: 30)

// Extension-д байгаа өөрийн үүсгэгчийг ашиглах
let jane = Person(name: "Jane")

print(john)
print(jane)