# tbb::interface6::memory_pool_allocator< T, P > Class Template Reference
[Memory Allocation]

`#include <memory_pool.h>`

List of all members.

## Classes

struct | rebind

## Public Types

typedef tbb::internal::allocator_type < T >::value_type | value_type
typedef value_type * | pointer
typedef const value_type * | const_pointer
typedef value_type & | reference
typedef const value_type & | const_reference
typedef size_t | size_type
typedef ptrdiff_t | difference_type

## Public Member Functions

| memory_pool_allocator (pool_type &pool) throw ()
| memory_pool_allocator (const memory_pool_allocator &src) throw ()
template<typename U >
| memory_pool_allocator (const memory_pool_allocator< U, P > &src) throw ()
pointer | address (reference x) const
const_pointer | address (const_reference x) const
pointer | allocate (size_type n, const void *=0)
| Allocate space for n objects.
void | deallocate (pointer p, size_type)
| Free previously allocated block of memory.
size_type | max_size () const throw ()
| Largest value for which method allocate might succeed.
template<typename... Args>
void | construct (pointer p, Args &&...args)
| Copy-construct value at location pointed to by p.

## Protected Types

typedef P | pool_type

## Protected Attributes

pool_type * | my_pool

## Friends

class | memory_pool_allocator
template<typename V , typename U , typename R >
bool | operator== (const memory_pool_allocator< V, R > &a, const memory_pool_allocator< U, R > &b)
template<typename V , typename U , typename R >
bool | operator!= (const memory_pool_allocator< V, R > &a, const memory_pool_allocator< U, R > &b)

## Detailed Description

### template<typename T, typename P = internal::pool_base>
class tbb::interface6::memory_pool_allocator< T, P >

Meets "allocator" requirements of ISO C++ Standard, Section 20.1.5

The documentation for this class was generated from the following file:

- memory_pool.h

Copyright © 2005-2012 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.