[英]how to convert int to vector<int>?
当我将int赋给vector时,出现一条错误消息:“ conversion from 'int' to non-scalar type 'std::vector<int, std::allocator<int> >' requested
”,我该怎么办? 我有向量varr(4,-1) ; 什么是做“ varr [2] = 3 ”的正确方法?
它们是两种不同的类型。 如果要向vector<int>
添加int
,请执行以下操作:
std::vector<int> vec;
vec.push_back(10);
更新:要在向量中设置元素:
std::vector<int> vec(16, 0); // Create a 16 element vector containing all 0's
vec[4] = 10; // Sets the 5th element (0 based arrays) to 10
似乎有一个详尽的codeguru教程 ,您可能会感兴趣。
向量是整数的集合。 您不能将int分配给该集合,而是使用push_back()函数将其添加到该集合:
std::vector<int> manyInts;
int oneInt = 42;
manyInts.push_back(oneInt);
如果要将int
添加到vector<int>
,则应使用push_back
:
vector<int> v;
int i = 5;
v.push_back(i);
您需要将int值添加到vector中,例如list,map。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.