gpt4 book ai didi

c++ - 为什么数组被认为比 STL 容器更好?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:17:14 26 4
gpt4 key购买 nike

arraystd::queue,哪个在时间上更好,为什么?

我编写了一种图形处理算法,其中边界顶点存储在 std::queue 中,并使用 push_back()pop_front()。当我用前端和结束指针指向边界顶点的开始和结束的数组重新实现边界时,我在时间方面得到了更好的结果。对于足够大的数据,数组真的比队列快吗?

最佳答案

数组对于大多数机器来说速度更快,因为数组的连续元素可以加载到同一个缓存行中(或者根据需要预先加载到缓存中)。由于 L1 缓存读取比主内存访问快 200 倍,因此任何需要指针提取的内容都可能不在缓存中,并且需要更长的主内存提取周期。

https://www.youtube.com/watch?v=YQs6IC-vgmo

关于c++ - 为什么数组被认为比 STL 容器更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39621277/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com