小编Kat*_*ate的帖子

iota,generate和手动循环都执行相同的操作吗?

这三种填充向量的方法之间是否存在性能差异?

#include <vector>
#include <numeric>
#include <algorithm>
#include <iterator>

int main()
{
    std::vector<int> v(10);
    std::iota(v.begin(), v.end(), 0);

    std::vector<int> v2(10);
    int i = 0;
    std::generate(v2.begin(), v2.end(), [&i](){return i++; });

    std::vector<int> v3(10);
    i = 0;
    for (auto& j : v3)
    {
        j = i++;
    }

return 0;
}
Run Code Online (Sandbox Code Playgroud)

我知道它们都会产生相同的结果,我只想知道较大的矢量是否存在速度差异.不同类型的答案会有所不同吗?

c++ performance vector

1
推荐指数
2
解决办法
977
查看次数

标签 统计

c++ ×1

performance ×1

vector ×1