Sobes.tech
Junior — Middle

Ako sa ukladajú údaje v oblasti dynamickej pamäte (heap)?

sobes.tech AI

Odpoveď od AI

Dynamická pamäť (heap) je oblasť pamäte, z ktorej program alokuje a uvoľňuje pamäť počas behu podľa potreby.

Ukladanie dát v heap sa vykonáva takto:

  • Pri požiadavke na pamäť (napríklad pomocou malloc v C alebo new v C++) sa alokuje blok požadovanej veľkosti.
  • Pamäť nie je organizovaná ako zásobník, takže objekty môžu byť umiestnené na ľubovoľných miestach.
  • Správa pamäte je na programátorovi (v jazykoch bez garbage collectora) alebo na garbage collectore (v jazykoch s GC).
  • Na iOS, pri použití Objective-C alebo Swift, sú objekty zvyčajne alokované v heap, a správa pamäte sa vykonáva pomocou ARC (automatické počítanie odkazov).

Príklad v Swift:

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

let person = Person(name: "Ivan") // objekt vytvorený v heap