gpt4 book ai didi

c++ - QVector 或 float* - Qt 内存管理优于 native C++?

转载 作者:行者123 更新时间:2023-11-28 02:47:29 25 4
gpt4 key购买 nike

在初始化大型数据结构时,对于内存关键型应用程序,我是否应该在内存管理点很少的情况下选择 float* 而不是 QVector

特别是,我需要在多次迭代的循环中写入结构。 QVectoroperator[] 访问器执行写时复制。使用 float* 并访问其元素是否更值得争论?

最佳答案

我宁愿使用 QVectorstd::vector。由于 QVector 将 float 存储在一个连续的内存区域中,因此它的执行速度几乎与 float 数组一样快。写时复制添加检查,但我认为它不相关,但万一它很重要 std::vector 不执行 COW。

使用QVector,对其进行基准测试。如果太慢,只有尝试优化。

关于c++ - QVector<float> 或 float* - Qt 内存管理优于 native C++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23963776/

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