2 回答
TA贡献1810条经验 获得超4个赞
可以将其他vector合并到一个vector中,用vector的insert方法详细如下:
iterator insert(
iterator _Where,
const Type& _Val
);
void insert(
iterator _Where,
size_type _Count,
const Type& _Val
);
template<class InputIterator>
void insert(
iterator _Where,
InputIterator _First,
InputIterator _Last
);
例子如下(使用了第三种定义):
vector <int> v1;
vector <int> v2;
vector <int> v3;
v3.insert(v3.end(), v1.begin(), v1.end());
TA贡献1824条经验 获得超8个赞
可以这样b.insert(b.begin(),a.begin(),a.end());最后有例子程序
for_each(vector1.begin(),vector1.end(),vector3.push_back);失败是因为最后一个参数要求一个函数对象,不是一个函数指针的问题吧
这里的函数对象是指一个重载了operator()()的类的实例
int main(void)
{
vector<int> a;
a.push_back(1);
a.push_back(2);
a.push_back(3);
vector<int> b;
b.push_back(4);
b.push_back(5);
b.push_back(6);
b.insert(b.begin(),a.begin(),a.end());
for(int i=0;i<b.size();i++)
cout<<b[i];
return 0;
}
添加回答
举报