【发布时间】:2017-01-19 19:36:03
【问题描述】:
我想知道 realloc() 真正需要多少性能:我经常这样做是为了将可用内存区域扩展一个元素(=特定结构)。是 - 感谢 MMU - 这样的 realloc() 只是保留内存区域的扩展,还是在某些条件下可以想象的所有数据的完整复制?
据我所知,当 std::vector 的大小增加并且预定义的内存量太小时,它经常需要复制内存区域...
【问题讨论】:
-
@Olaf 请仔细阅读我的帖子:我不扩展结构,但我通过某种结构的元素扩展内存区域。然而这一切都不是我的问题......
-
“我经常这样做是为了将可用内存区域扩展一个元素(=特定结构)” - 读起来就像你的代码包括疯狂的转换(可以容易导致UB)。
标签: c++ c performance malloc realloc