클래스로 메모리를 할당함 new, delete와 다르게 더 디테일하게 메모리를 만질 수 있다.
template <class T> class allocator { public: T* allocate(size_t); void deallocate(T*, size_t); void construct(T*, const T&); void destory(T*); .... };