Sterta inaczej kopiec lub stóg (ang. heap) to obszar pamięci implementujący strukturę danych o tej samej nazwie. Jej części są udostępniane na wyłączność uruchomianym programom (procesom). Przechowywane są tam dynamicznie tworzone struktury danych. W przeciwieństwie do stosu nie jest uporządkowana ani czyszczona między wywołaniami funkcji.
W języku C++ pamięcią na stercie zarządza sam programista. Do przydzielania i zwalniania pamięci na stercie służą odpowiednio operatory new i delete (oraz delete[]).
W języku JavaScript obiekty i funkcje są alokowane na stercie. W odróżnieniu od typów prostych i referencji, które są przechowywane na stosie. W obu przypadkach silnik JavaScript sam zwalania zasoby, gdy zmienne są już nieużywane. Dzieje się to dzięki odśmiecaniu pamięci.
Zobacz też
Przypisy
- ↑ s, Stos i sterta (kopiec) – różnice [online], zielware, 12 listopada 2016 [dostęp 2020-01-25] (pol.).
- 1 2 Podstawy programowania 7 [online], golinski.faculty.wmi.amu.edu.pl [dostęp 2020-01-25].
- ↑ Felix Gerschau: JavaScript's Memory Management Explained. [dostęp 2022-05-14].