Каждого СТЛ контейнера взять аллокатор в качестве параметра:распределителя, без шаблона
template < class T, class Allocator = allocator<T> > class vector;
Если вы написать свой собственный класс можно использовать собственный распределитель. Но можно ли написать собственный распределитель без использования шаблонов?
Например, написание этой функции не легко, если вы не можете использовать шаблоны
pointer allocate(size_type n, const_pointer = 0) {
void* p = std::malloc(n * sizeof(T));
if (!p)
throw std::bad_alloc();
return static_cast<pointer>(p);
}
Потому что, как вы могли бы знать размер T?
k, но это нерелевантно – Merni