我想填充一个vector<int>使用std::fill,但不是一个值,矢量应该包含数字后增加的顺序.
我尝试通过迭代函数的第三个参数来实现这一点,但这只会给我一个填充1或2的向量(取决于++运算符的位置).
例:
vector<int> ivec;
int i = 0;
std::fill(ivec.begin(), ivec.end(), i++); // elements are set to 1
std::fill(ivec.begin(), ivec.end(), ++i); // elements are set to 2
Run Code Online (Sandbox Code Playgroud) memsetC++ 中的向量是否有任何等价函数?
(不是clear()或erase()方法,我想保留向量的大小,我只想初始化所有值.)