15 Haziran 2017 Perşembe

C++ Akıllı İşaretçiler (Smart Pointers)


Smart pointer C++ standart kütüphanesinde #include <memory> header dosyasında tanımlıdır ve amacı kaynak yönetiminin otomatik gerçekleştirilmesini sağlamaktır. Pointer 'lar hafızada belirli bir alanın adresini gösterir ve bu alanda verinin tutulması için hafızada yer açma ve ilgili veri ile işlem bittiğinde bu verinin silinmesi sorumluluğu programcıya aittir. Smart pointer larda ise hafızanın boşaltılması işlemi otomatik olarak uygun bir zamanda gerçekleştirilir.Uygun zaman biraz ucu açık bir kavram tabi ki, isterseniz şimdi bir örnek üzerinden normal (raw) pointer ile smart pointer farkını, hafızanın nasıl otomatik silindiğine dair bir örnek üzerinden görelim;