gpt4 book ai didi

c++ - 如果不先初始化 vector ,该如何处理 vector ?

转载 作者:行者123 更新时间:2023-12-02 09:48:03 24 4
gpt4 key购买 nike

我正在使用C++中的<algorithm>库。
我在练习std::vector
如果不像std::vector<int>那样首先初始化vector,如何使用vector?

std::vector<int> vec;
int i = 0;
std::generate_n(vec, 10, [int& i](){i += 10; return i});
我希望它是 v(10,0);

最佳答案

您可以使用 std::back_inserter (和 std::back_insert_iterator )在容器上执行push_back来插入元素。例如。

std::vector<int> vec;
vec.reserve(10); // if the size could be determined in advance
int i=0;
std::generate_n(std::back_inserter(vec), 10, [&i](){i+=10; return i;} );

关于c++ - 如果不先初始化 vector ,该如何处理 vector ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63446930/

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