定义vector对象习惯不分配内存,老感觉若要分配内存我还不如用数组
但vector容器使用 copy函数若未先给要接收拷贝的容器分配内存, 是一个空的容器,就无法赋值,运行时会出现数组越界的问题
vector<int>v{ 1,2,3,4,5 };
vector<int>v2; //若未先给v2分配内存 是一个空的容器,所以无法赋值,运行时出现数组越界的问题
// vector<int>v2(5);
v2.resize(v.size());//可用 resize( )函数 指定容器的大小
copy(v.begin(), v.end(), v2.begin());
//输出迭代器 搭配copy打印v2容器
copy(v2.begin(), v2.end(), ostream_iterator<int>(cout," "));
我用copy的时候容器没分配内存,就报错:,拍照翻译意思是:“不能寻找值初始化的向量迭代器”(它不翻译是“未初始化”,当时就没明白过来!),然后百度的文章 都是有分配内存的成功的使用例子,没说明是要分配内存的,然并软