c++ - realloc 调用会引入多少开销?

标签 c++ c memory memory-management realloc

我在 for 循环的每次迭代中都使用 realloc,该循环迭代次数超过 10000 次。

这是一个好习惯吗? realloc 调用很多次会报错吗?

最佳答案

除非您的内存耗尽(任何其他分配器也会发生这种情况),否则它不会失败 - 但如果您设法预先估计所需的存储空间,您的代码通常会运行得更快。

通常最好只运行一个额外的循环来确定存储要求。

我不会说 realloc 是不行的,但这也不是好的做法。

关于c++ - realloc 调用会引入多少开销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5471510/

相关文章:

c++ - Vim 中突出显示的类和函数名

c++ - 关于编译程序如何与操作系统交互的问题

copy_from_user - 难以从用户空间复制双指针

c - .bss 部分的意义

c++如果它们共享一个数字,则组合 vector

c++ - 修改后的 std::invoke/std::apply,将可调用对象作为 void* - 可能吗?

c++ - OpenCV 中 cv::Mat 的自定义类型

java - 可变参数堆污染 : what's the big deal?

memory - 声明非常大的数组并迭代 stdin 时内存持续增加

c - 如何获取指针指向的内存大小?