Junior — Middle
Dinamik yaddaş sahəsində (heap) məlumatlar necə saxlanılır?
sobes.tech Süni İntellekt
AI-dan cavab
Dinamik yaddaş (heap) — bu proqramın ehtiyac duyduğu zamanlarda yaddaşı ayırıb sərbəst buraxdığı yaddaş sahəsidir.
Heap-də məlumatların saxlanması aşağıdakı şəkildə həyata keçirilir:
- Yaddaş tələbi (məsələn, C-də malloc və ya C++-də new vasitəsilə) ilə lazım olan ölçüdə blok ayrılır.
- Yaddaş yığın kimi təşkil olunmayıb, ona görə obyektlər istənilən yerlərdə yerləşə bilər.
- Yaddaş idarəetməsi proqramçıya (sıfır toplayıcı olmayan dillərdə) və ya toplayıcıya (GC olan dillərdə) aiddir.
- iOS-də, Objective-C və ya Swift istifadə edərkən, obyektlər adətən heap-də ayrılır və yaddaş idarəetməsi ARC (avtomatik istinad sayımı) vasitəsilə həyata keçirilir.
Swift-də nümunə:
class Person {
var name: String
init(name: String) {
self.name = name
}
}
let person = Person(name: "Ivan") // obyekt heap-də yaradılır