- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages
- Examples

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# auto_buffer_selector Struct Template Reference

`#include <fastformat/util/memory/auto_buffer_selector.hpp>`

List of all members.

## Detailed Description

### template<typename T, size_t N, typename A = ss_typename_type_def_k stlsoft::allocator_selector<T>::allocator_type>
struct fastformat::util::auto_buffer_selector< T, N, A >

A Type Generator that deduces the appropriate specialisation of `stlsoft::auto_buffer`.

There are two reasons for this:

- Some (older) compilers have to use the old (pre-1.9) form of `stlsoft::auto_buffer`. Using fastformat::auto_buffer_selector makes FastFormat code independent of such compilers' behavioural odities.
- Visual C++ 8 & 9 both have bug that causes them to exhibit a linker error (LNK2005) whereby std::allocator<>::allocate() and std::allocator<>::deallocate() are multiply defined. In that case, we always select stlsoft::malloc_allocator as the allocator, as this will still hook into the VC++ memory tracing debug API.

## Public Types
typedef stlsoft::auto_buffer < T, A, N > | type
| The generated type.

## Member Typedef Documentation

typedef stlsoft::auto_buffer<T, A, N> type

The generated type.

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

- fastformat/util/memory/auto_buffer_selector.hpp

FastFormat Library documentation © Matthew Wilson, 2006-2009 |