首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

关于C++的STL中的copy函数解决方法

2012-03-31 
关于C++的STL中的copy函数#include iostream#include vector#include algorithmint main(){using na

关于C++的STL中的copy函数
#include <iostream>
#include <vector>
#include <algorithm>

int main()
{
using namespace std;

vector<int> a, b;
b.push_back(1);
b.push_back(2);
b.push_back(3);
cout<<"b's size is "<<b.size()<<endl;
  copy(b.begin(), b.end(), a.end());
cout<<"a's size is "<<a.size()<<endl;

return 0;
}
我试验一个很简单的代码,就是将b中的元素复制到a中,如上述代码,但是每次运行时都出错(vc6.0和vc2008都试过),不知是什么原因,请高手指点!

[解决办法]
a没有元素长度为0.。。怎么复制过去?
[解决办法]
copy(b.begin(), b.end(), a.end());//a.begin()
[解决办法]
标准库算法从来不做修改容器大小的操作,如果想在算法中改变容器的大小,需要用迭代器适配器 -- back_inserter

热点排行