Repartitorul de clasă

Toate containerele de biblioteca standard șablon are un parametru șablon, care implicit la distribuitor. Un container cu distribuitor de utilizator oferă posibilitatea de a gestiona alocarea și Dealocarea elementelor container.

** (C_ ++ 98/03 numai) ** Când moștenească de la distribuitorul de clasă trebuie să asigure structura relegare care _Other typedef se referă la clasă nou derivate.

Astfel, Repartitorul definește următoarele tipuri:

Acestea indică tipul de indicii s formă și referințe ar trebui să fie făcute la elementele selectate. (Allocator :: indicatorul nu este neapărat același tip * pentru toate site-urile distribuitorului, chiar dacă are este determinarea evidentă a distribuitorului clasei.)

11 C ++; și mai târziu: inclusiv operațiunile de a trece la distribuitor, distribuitorul utilizează o interfață minimală și pune în aplicare un constructor copy, == si! = Operatorii, alocarea și deallocation. Pentru mai multe informații și exemple, a se vedea. În secțiunea Distribuitori

conta
Numărul de elemente pentru care suficient spațiu este alocat.

valoarea de retur

Un pointer la obiectul selectat sau nul de valoare, în cazul în care memoria nu a fost eliberat.

notițe

PTR
Un pointer la prima versiune obiect din depozit.

conta
Numărul de obiecte eliberat din depozit.

notițe

Funcția membre eliberează matrice de stocare pentru numărul de obiecte de tipul tip de PTR. prin apelarea operatorul delete (PTR). Ptr indicatorul trebuie să fie returnat prin apelarea alocat anterior pentru obiectul distribuitorului, pe care o compară cu ea ** * ** selecție matrice tip de obiect și o rezoluție. deallocate nu aruncă o excepție.

Un exemplu de utilizare a funcției de membru în secțiunea repartitorului :: aloca.

Se numește obiectele destructor fără eliberarea de memorie în care pentru a stoca obiecte.

notițe

Funcția Membru elimină obiectul notat prin PTR. prin apelarea destructor PTR -> tip.