首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

pool对象内存储器池(object_pool)

2012-12-25 
pool对象内存池(object_pool)#includeboost/pool/object_pool.hpp#includeiostream#includecassert#

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;}

热点排行