Delen via


cache_suballoc-klasse

Hiermee definieert u een bloktoewijzing die geheugenblokken van één grootte toewijst en de toewijzing ervan ongedaan maakt.

Syntaxis

template <std::size_t Sz, size_t Nelts = 20>
class cache_suballoc

Parameterwaarden

Sz
Het aantal elementen in de matrix dat moet worden toegewezen.

Opmerkingen

De cache_suballoc klassesjabloon slaat de toewijzing van geheugenblokken op in een vrije lijst met niet-afhankelijke lengte, met behulp van freelist<sizeof(Type), max_unbounded>en subtoewijzingen van geheugenblokken uit een groter segment dat is toegewezen met een operator nieuw wanneer de gratis lijst leeg is.

Elk segment bevat Sz * Nelts bytes aan bruikbaar geheugen en de gegevens die de operator nieuw en operator verwijderen vereisen. Toegewezen segmenten worden nooit vrijgemaakt.

Constructeurs

Constructeur Beschrijving
cache_suballoc Maakt een object van het type cache_suballoc.

Functies voor leden

Lid, functie Beschrijving
toewijzen Wijst een blok geheugen toe.
toewijzing ongedaan maken Er wordt een opgegeven aantal objecten uit de opslag vrijgemaakt vanaf een opgegeven positie.

Behoeften

Rubriek:<toewijzingen>

Naamruimte: stdext

cache_suballoc::toewijzen

Wijst een blok geheugen toe.

void *allocate(std::size_t count);

Parameterwaarden

aantal
Het aantal elementen in de matrix dat moet worden toegewezen.

Retourwaarde

Een aanwijzer naar het toegewezen object.

cache_suballoc::cache_suballoc

Maakt een object van het type cache_suballoc.

cache_suballoc();

cache_suballoc::d eallocate

Er wordt een opgegeven aantal objecten uit de opslag vrijgemaakt vanaf een opgegeven positie.

void deallocate(void* ptr, std::size_t count);

Parameterwaarden

ptr
Een aanwijzer naar het eerste object dat de toewijzing van de opslag ongedaan moet worden gemaakt.

aantal
Het aantal objecten dat uit de opslag moet worden toegewezen.

Zie ook

<toewijzingen>