1

Cocoa Objective-C a práce s pamětí

Práce s pamětí v objective-c je velmi zásadní (přece jen je to klasické Cčko v novém kabátě). Zvlášť, pokud programujeme pro iPhone, který nepoužívá garbage collector, musíme se o vše postarat sami. Určitě jste se někdy setkali s názvy jako alloc, init, release, dealloc, retain, či autorelease. Z Cčka víme, že pokud nějakou proměnnou vytvoříme pomocí malloc, nesmíme ji zapomenout zase odalokovat pomocí free. Obdobně v C++ je to new a delete. V Objective-C je to podobné, abychom mohli správně uvolnit již nepotřebnou paměť, musíme vědět, kdo je vlastníkem daného objektu.

V tomto článku si povíme kdy a jak správně uvolňovat objekty, které používáme, představíme si objective-c property a vysvětlíme si různé typy, kterými property pracují s pamětí. Na závěr si povíme něco o automatickém uvolňování paměti (nikoliv o garbage collectoru).

Continue reading