我在 for
循环的每次迭代中都使用 realloc
,该循环迭代次数超过 10000 次。
这是一个好习惯吗? realloc
调用很多次会报错吗?
最佳答案
除非您的内存耗尽(任何其他分配器也会发生这种情况),否则它不会失败 - 但如果您设法预先估计所需的存储空间,您的代码通常会运行得更快。
通常最好只运行一个额外的循环来确定存储要求。
我不会说 realloc
是不行的,但这也不是好的做法。
关于c++ - realloc 调用会引入多少开销?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5471510/