【发布时间】:2010-02-12 17:19:27
【问题描述】:
如果以通常实现的方式实现数组类,则与向量等 STL 等效项相比,它的性能会更慢。那么是什么让 STL 容器/算法快速?
【问题讨论】:
-
“它的普遍实现方式”是一个非常模糊的东西。每个人都以自己的方式实现它。从技术上讲,它通常未实现但被重复使用。
-
请说明您引用了哪些操作,以及您如何确定标准库更快。
-
@Mehrdad, Malte:是的,我同意。但是,假设对于一个数组类,通过将元素移回原处来在中间插入一个元素,从而为新元素创建一个空白空间。这个实现比向量的 push_back() 慢得多。我通过获取时间或时钟周期来确定它。
-
您正在比较插入到数组与
vector.push_back()?那不是插入,而是追加。 -
@Malte-Clasen:@UncleBens:没错。看来他是在比较苹果和橘子。
标签: c++ performance stl