| Open CASCADE Technology
    7.8.0.dev
    | 
Implements allocator requirements as defined in ISO C++ Standard 2003, section 20.1.5. More...
#include <NCollection_StdAllocator.hxx>
| Data Structures | |
| struct | rebind | 
| Public Types | |
| typedef T | 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 | |
| NCollection_StdAllocator () | |
| Constructor.  More... | |
| NCollection_StdAllocator (const Handle< NCollection_BaseAllocator > &theAlloc) | |
| Constructor.  More... | |
| template<typename U > | |
| NCollection_StdAllocator (const NCollection_StdAllocator< U > &Y) | |
| Copy constructor.  More... | |
| template<typename U > | |
| NCollection_StdAllocator & | operator= (const NCollection_StdAllocator< U > &Y) | 
| Assignment operator.  More... | |
| pointer | address (reference x) const | 
| Returns an object address.  More... | |
| const_pointer | address (const_reference x) const | 
| Returns an object address.  More... | |
| pointer | allocate (size_type n, const void *=0) | 
| Allocates memory for n objects.  More... | |
| void | deallocate (pointer p, size_type) | 
| Frees previously allocated memory.  More... | |
| size_type | max_size () const | 
| Returns the largest value for which method allocate might succeed.  More... | |
| void | construct (pointer p, const_reference val) | 
| Constructs an object.  More... | |
| void | destroy (pointer p) | 
| Destroys the object.  More... | |
| const Handle< NCollection_BaseAllocator > & | Allocator () const | 
| Returns an underlying NCollection_BaseAllocator instance.  More... | |
| Protected Attributes | |
| Handle< NCollection_BaseAllocator > | myAlloc | 
Implements allocator requirements as defined in ISO C++ Standard 2003, section 20.1.5.
The allocator uses instance of the NCollection_BaseAllocator (sub)class for memory allocation/deallocation. The allocator can be used with standard containers (std::vector, std::map, etc) to take advantage of NCollection_IncAllocator which implements memory region concept, and hence to increase performance in specific cases.
The underlying NCollection_BaseAllocator instance can be received using the Allocator() method.
Example of use:
| typedef const value_type* NCollection_StdAllocator< T >::const_pointer | 
| typedef const value_type& NCollection_StdAllocator< T >::const_reference | 
| typedef ptrdiff_t NCollection_StdAllocator< T >::difference_type | 
| typedef value_type* NCollection_StdAllocator< T >::pointer | 
| typedef value_type& NCollection_StdAllocator< T >::reference | 
| typedef size_t NCollection_StdAllocator< T >::size_type | 
| typedef T NCollection_StdAllocator< T >::value_type | 
| 
 | inline | 
Constructor.
Creates an object using default Open CASCADE allocation mechanism, i.e. which uses Standard::Allocate() and Standard::Free() underneath.
| 
 | inline | 
Constructor.
Saves theAlloc as an underlying allocator instance.
| 
 | inline | 
Copy constructor.
Copies Allocator() from Y.
| 
 | inline | 
Returns an object address.
Returns &x.
| 
 | inline | 
Returns an object address.
Returns &x.
| 
 | inline | 
Allocates memory for n objects.
Uses underlying allocator to allocate memory.
| 
 | inline | 
Returns an underlying NCollection_BaseAllocator instance.
Returns an object specified in the constructor.
| 
 | inline | 
Constructs an object.
Uses placement new operator and copy constructor to construct an object.
| 
 | inline | 
Frees previously allocated memory.
Uses underlying allocator to deallocate memory.
| 
 | inline | 
Destroys the object.
Uses object destructor.
| 
 | inline | 
Returns the largest value for which method allocate might succeed.
| 
 | inline | 
Assignment operator.
| 
 | protected | 
 1.8.13
 1.8.13