答:
使用vector内的reserve函数。
reserve函数主要是为提升vector的效率而存在的,如果已知vector的大小,可以在初始化时为vector执行reserve操作,分配足够的内存空间,之后数据加入vector就不会造成内存再次分配,也可以减少内存碎片。另外reserve操作只分配内存空间,并不执行元素初始化,因此效率上要比resize要高,假如vector中存储的是复杂的对象,执行这些元素的初始化将是一笔不小的开销。
STL中的vector如何处理才可以避免内存碎片
最新推荐文章于 2024-09-15 16:34:20 发布