pool_alloc
pool_alloc fournit deux allocateurs de mémoire qui peuvent être utilisés pour les paramètres de modèle de conteneur standard, à savoir pool_alloc et fast_pool_allocator, leur comportement est un peu différent de la classe de pool de mémoire précédente - lorsque l'allocation de mémoire échoue, une exception sera lancée std::bad_alloc . Ils sont situés dans l'espace de noms boost et doivent inclure le fichier d'en-tête <boost/pool/pool_alloc.hpp>.
Sauf en cas de besoin particulier, nous devons toujours utiliser la bibliothèque standard pour implémenter l'allocateur de mémoire intégré. L'utilisation de pool_alloc doit être soigneusement testée pour s'assurer qu'elle peut fonctionner avec le conteneur.
exemple de code
#include <boost/pool/pool_alloc.hpp>
using namespace boost;
void case5()
{
vector<int, pool_allocator<int> > v; //pool_allocator代替默认的内存分配器
v.push_back(10); //vector将使用新的分配器良好工作
cout << v.size();
}
int main()
{
case5();
}