pool对象内存池(object_pool)
#include<boost/pool/object_pool.hpp>#include<iostream>#include<cassert>#include<string>using namespace boost;using namespace std;class demo_class{public: int a,b,c; demo_class(int x=1,int y=2,int z=3):a(x),b(y),c(z){}};int main(){ object_pool<demo_class> p1; demo_class *p = p1.malloc(); assert(p1.is_from(p)); //这个时候居然还没有初始化 cout << p->a << endl;//137028012乱七八糟的数据 p = p1.construct(4,5,6); cout << p->a << endl;//4 object_pool<string> ps; for(int i=0;i<10;++i){ string *s = ps.construct("abcd"); cout << *s << endl; } //也可以构造普通数据类型 object_pool<int> pi; int *i = pi.construct(3); cout << *i << endl;}