指针+内存池的优化

来源:互联网 发布:电信宽带测速软件 编辑:程序博客网 时间:2024/05/29 18:29

在 quque 或 set 或 map 中,存结构体指针加速(省去调用构造函数)。

附一个队友 yzwsm 共享的链接。

#include <set>#include <stdio.h>#include <algorithm>using namespace std;struct T {    int x;    T(){}    T(int _x):x(_x){}    bool operator < (const T& B) const {        return x < B.x;    }};template<typename T>struct Cmp {    bool operator () (const T& pa,const T& pb) const {        return *pa < *pb;    }};set< T*, Cmp<T*> > s;T a[400];int main(){    T* ptop = &a[0];    ptop->x = 5;    s.insert(ptop++);    ptop->x = 1;    s.insert(ptop++);    ptop->x = 4;    s.insert(ptop++);    ptop->x = 3;    s.insert(ptop++);    ptop->x = 2;    s.insert(ptop++);    ptop->x = 6;    s.insert(ptop++);    for(set<T*>::iterator it=s.begin();it!=s.end();it++)    {        printf("%d\n",(*it)->x);    }    return 0;}


0 0
原创粉丝点击