首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >小的“向量”式结构,没有大小不同的容量

小的“向量”式结构,没有大小不同的容量
EN

Stack Overflow用户
提问于 2021-02-13 12:16:17
回答 2查看 56关注 0票数 0

我有一个程序,其中我有非常大的数量(数十万,甚至数百万)相当小的向量(~95%的向量包含2-6个int)。一旦创建,它们的大小变化很小,但在编译时无法获知。除了结构的大小之外,我不需要额外的容量,而且我想去掉单独存储容量的开销。这将需要为任何改变结构大小的操作重新分配存储,这是我愿意付出的代价。

有没有一个库或多或少地提供了具有这些特性的vector的临时替代品?

EN

回答 2

Stack Overflow用户

发布于 2021-02-13 17:31:43

Folly“是一个以实用性和效率为设计目标的C++14组件库,包含了Facebook广泛使用的各种核心库组件

Folly smallvec是一个小向量的优化实现。

看一看。

票数 2
EN

Stack Overflow用户

发布于 2021-02-13 12:23:38

您是否单独创建每个向量?如果是这样的话,您是否尝试过使用数组呢?你可以在创建之前做一个快速的大小检查(在数组中放入了多少整数),这样你就不需要额外的容量了。另外,김선달上面的评论听起来就是你想要的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66181752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档