C ++中std :: iota的效率?

时间:2019-06-21 06:03:51

标签: c++

假设我有一个向量:

vector<int> v;

,我希望它用0到9之间的整数填充。然后我在这里有几个选择:

v.resize(10);
for (int i = 0; i < 10; i++) {
  v[i] = i;
}
// or
v.reserve(10);
for (int i = 0; i < 10; i++) {
  v.push_back(i);
}
// or
iota(v.begin(), v.end(), 0);

与其他两种方法相比,使用std :: iota有什么内存/时间优势?我个人认为前两者更具可读性,尽管由于我不是C ++专家,我可能会将其与可及性混为一谈。

0 个答案:

没有答案