что такое std::allocator<T> ?

TraNceR

Member
Это способ выделения памяти, считай для а стандартом случае это обычный delete и new. Но он не всегда эфективен, если у нас куча маленьких обьектов которые еще часто создаются и убиваются, будет очень медленно работать, и выгоднее реализовать свой аллокатор для них(напрример заранее выделить кучу памяти и ее както блоками быстро раздавать, не спрашивая у ОС)
 

_Proxy_

New Member
Это способ выделения памяти, считай для а стандартом случае это обычный delete и new. Но он не всегда эфективен, если у нас куча маленьких обьектов которые еще часто создаются и убиваются, будет очень медленно работать, и выгоднее реализовать свой аллокатор для них(напрример заранее выделить кучу памяти и ее както блоками быстро раздавать, не спрашивая у ОС)
тогда смысл использовать если это почти тоже что и new\delete.
или аллокатор это отображает поведения new \ delete которое мы можем изменить? тоесть как вы сказали у нас куча обьектов которые часто удаляются и создаются, то мы делаем его поведение так что бы он выделял много памяти но не вызывал конструкторы обектов, только когда нужно он раздает, или если обьекты живут долго и тд... то мы делаем что бы он выделял каждому обьекту память?
 

TraNceR

Member
_Proxy_, типа того, там реализован стандартный аллокатор. Ты можешь подменить его своим типа vector<myClass, myAllocator>
 

_Proxy_

New Member
спасибо) а где можно почитать еще про них? а то что то гуглил но не нашел толком
 

TraNceR

Member
вот уже есть пара реализаций, с описанием
 
_Proxy_, уважаемый, есть прекрасная тема зачем создавать на каждый вопрос по теме?
 

_Proxy_

New Member
_Proxy_, уважаемый, есть прекрасная тема зачем создавать на каждый вопрос по теме?
И толку от той темы?? Что бы искать было легче, вы может не думаете что у кого то возникнет такой же вопрос или еще что то в этом роде и потом ищи в тоне флуда там
 

_Proxy_

New Member
я понимаю что гугл-скилл очень нужен) без него никуда) но сами поймите хочется так сказать пообщаться с образованными людьми, так сказать подискутировать)
 
Зверху