C++/Zarządzanie pamięcią: Różnice pomiędzy wersjami

m
Wycofano edycje użytkownika Franekmat (dyskusja). Autor przywróconej wersji to 37.47.165.84.
m (jakiś obiektów -> jakichś obiektów)
Znacznik: Wycofane
m (Wycofano edycje użytkownika Franekmat (dyskusja). Autor przywróconej wersji to 37.47.165.84.)
Znacznik: Wycofanie zmian
</pre>
 
Warto zwrócić uwagę, że nigdzie w programie nie ma bezpośredniego wywołania '''delete''', mimo to destruktor klasy jest wołany. Z tej cechy można korzystać we własnych klasach: zamiast przechowywać wskaźniki do jakichśjakiś obiektów wykorzystywanych wewnętrznie, łatwiej mieć <tt>unique_ptr</tt>, dzięki czemu nie trzeba pamiętać o zwalnianiu pamięci w destruktorze. Analogicznie w przypadku funkcji <tt>unique_ptr</tt> załatwia za nas zwalnianie pamięci, także '''w przypadku wystąpienia wyjątku'''. Na przykład:
 
<source lang="cpp">