Udostępnij za pośrednictwem


allocator::rebind

Struktura umożliwiająca programu przydzielania dla obiektów typu przydzielić magazynu obiektów innego typu.

template<class _Other>
   struct rebind {
   typedef allocator<_Other> other;
   };

Parametry

  • inne
    Typ elementu, dla którego przydzielenia pamięci.

Uwagi

Ta struktura jest przydatne do przydzielania pamięci dla typu, który różni się od typu element kontenera realizowane.

Klasa szablonu Członkowskie definiuje typ innych.Jedynym celem jest zapewnienie nazwy typu przydzielania< _innych>, podana nazwa typu przydzielania<typu>.

Na przykład podany obiekt przydzielania al typu a, można przydzielić obiektu typu _Other z wyrażeniem:

A::rebind<Other>::other(al).allocate(1, (Other *)0)

Lub typ zapisu nazwę typu wskaźnik:

A::rebind<Other>::other::pointer

Przykład

// allocator_rebind.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <algorithm>
#include <vector>

using namespace std;

typedef vector<int>::allocator_type IntAlloc;
int main( ) 
{
   IntAlloc v1Iter;
   vector<int> v1;

   IntAlloc::rebind<char>::other::pointer pszC =
      IntAlloc::rebind<char>::other(v1.get_allocator()).allocate(1, (void *)0);

   int * pInt = v1Iter.allocate(10);
}

Wymagania

Nagłówek: <memory>

Obszar nazw: std

Zobacz też

Informacje

allocator Class