struct A
{
double x;
double y;
constexpr A(double _x = 0.0, double _y = 0.0) :x(_x), y(_y) {}//预算
};
std::list< A>B
如上述程序所示,使用链表B的时候,由于数据过多导致B不停申请空间,造成所编写的程序很卡,如何给B预申请一个很大的空间呢?大约可以存储3000个以上的单位即可,谢谢大哥们!!!
struct A
{
double x;
double y;
constexpr A(double _x = 0.0, double _y = 0.0) :x(_x), y(_y) {}//预算
};
std::list< A>B
如上述程序所示,使用链表B的时候,由于数据过多导致B不停申请空间,造成所编写的程序很卡,如何给B预申请一个很大的空间呢?大约可以存储3000个以上的单位即可,谢谢大哥们!!!
据我所知list没有说预分配内存的操作,都是插入一个元素分配一段内存。vector有,reserve函数可以预分配一段大的内存,而不构造对象,等插入的时候再调用复制构造函数。