为什么使用 std::vector 而不是 realloc?

Sta*_*123 3 c++ vector realloc dynamic-memory-allocation

在这里,在这个问题中,声明realloc在 C++ 中没有类似运算符或函数。如果您想调整数组的大小,只需std::vector改为。我什至看到 Stroustrup 在这里说同样的话。

我相信实现一个并不难。应该有一个不实施的理由。答案只说要使用,std::vector但没有说为什么没有实施。

不实现realloc-like 运算符或函数而宁愿使用的原因是什么std::vector

lub*_*bgr 5

不实现realloc-like 运算符或函数而宁愿使用的原因是什么std::vector

省时间。不要为了一个早已解决的问题而在自己的代码中追逐错误。惯用的 C++ 和可读性。轻松快速地获得问题的答案。realloc通过分配器自定义部件。

我相信实现一个并不难

这在很大程度上取决于您从打算编写的模板中需要什么。对于通用std::vector类的,请查看源代码(此处为libcxx3400 行vector标题)。我打赌你会修改你对这种结构的低复杂性的最初假设。