Sobes.tech
Junior — Middle

Какими способами осуществляется передача объектов в программе?

sobes.tech АИ

Одговор од АИ

U iOS-u, objekti se obično prenose u programima na sledeće načine:

  • Preko reference: objekti klasa se prenose putem reference, tj. prosleđuje se pokazivač na objekat u memoriji. Promene na objektu u jednom delu programa odražavaju se svuda gde postoji referenca na taj objekat.

  • Preko vrednosti: strukture i enumeracije u Swift-u se prenose putem vrednosti, tj. kopiraju se prilikom prenosa.

  • Preko delegata i zatvarača: objekti mogu biti preneti putem delegata (protokola) ili zatvarača za povratne pozive i prenos podataka između komponenti.

Primer prenosa objekta putem reference:

class Person {
    var name: String
    init(name: String) {
        self.name = name
    }
}

func changeName(person: Person) {
    person.name = "Novi naziv"
}

let p = Person(name: "Ivan")
changeName(person: p)
print(p.name) // Ispisaće "Novi naziv"