【发布时间】:2013-10-30 16:14:50
【问题描述】:
看起来reserve/rehash 函数只预先分配桶的数量,而不是为要插入的元素(key,vlaue) 对分配内存。
有没有办法我们也可以为元素预分配内存,所以低延迟应用不需要在动态内存分配上浪费时间。
【问题讨论】:
-
您可以设置桶的大小和桶的数量将成为地图的大小
-
我已经测试了
reserve在其构造函数中使用具有副作用的类型。看起来它确实没有为键或值保留内存。 ideone.com/yH746X -
@polkovnikov.ph 我同意它只为存储桶保留空间,而不是为键和值保留空间
-
@aaronman 如何设置存储桶大小?也很难说每个桶中最终会有多少元素
标签: c++ memory-management stl hashtable unordered-map