Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Rubriken innehåller följande makron:
ALLOCATOR_DECL
Ger en allokeringsklassmall.
#define ALLOCATOR_DECL(cache, sync, name) <alloc_template>
Anmärkningar
Makrot ger en malldefinition och en specialisering som tillsammans definierar en allokeringsklassmall som använder synkroniseringsfiltret och en cache av typen .
För kompilatorer som kan kompilera ombindning ser den resulterande malldefinitionen ut så här:
struct rebind
{ /* convert a name<Type> to a name<Other> */
typedef name<Other> other;
};
För kompilatorer som inte kan kompilera om den resulterande malldefinitionen ser ut så här:
template <class Type<class name
: public stdext::allocators::allocator_base<Type,
sync<stdext::allocators::rts_alloc<cache>>>
{
public:
name() {}
template <class Other>
name(const name<Other>&) {}
template <class Other>
name& operator= (const name<Other>&)
{
return *this;
}
};
CACHE_CHUNKLIST
Ger .
#define CACHE_CHUNKLIST <cache_class>
CACHE_FREELIST
Ger .
#define CACHE_FREELIST(max) <cache_class>
CACHE_SUBALLOC
Ger .
#define CACHE_SUBALLOC <cache_class>
SYNC_DEFAULT
Ger ett synkroniseringsfilter.
#define SYNC_DEFAULT <sync_template>
Anmärkningar
Om en kompilator har stöd för kompilering av både entrådade och flertrådade program ger makrot i alla andra fall .
Se även
allokerare