我想多次向 std::vector 添加一个值。例如。将整数值 1 加到 vector 中五次:
std::vector<int> vec;
vec.add(1, 5);
vec 之后应该是 {1,1,1,1,1} 的形式。有没有一种干净的 c++ 方法可以做到这一点?
最佳答案
这真的取决于你想做什么。
制作一个长度为 5 的 vector ,用 1 填充:
std::vector<int> vec(5, 1);
将 vector 增加 5 并用 1 填充:
std::vector<int> vec;
// ...
vec.insert(vec.end(), 5, 1);
或者调整它的大小(如果你知道初始大小):
std::vector<int> vec(0);
vec.resize(5, 1);
您还可以使用 fill
的多种版本之一来填充元素,例如:
fill_n(back_inserter(vec), 5, 1);
等等....阅读库文档,其中一些函数也会返回有用的信息。
关于c++ - 多次向 std::vector 添加相同的值(重复),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30998444/