Vector中Insert()

来源:互联网 发布:华南师大网络教育 编辑:程序博客网 时间:2024/06/03 17:52
#include<bits/stdc++.h>
using namespace std;
/*
当程序员无法知道自己需要的数组的规模多大时,用其来解决问题可以达到最大节约空间的目的.
vector中insert()的用法详解
*/
int main(){

/*创建一个vector,置入字母表的前4个字符 */ 
vector <char> letter; 
for( int i=0; i < 4; i++ ) 
  letter.push_back( i + 65 ); 


/*
1.insert( iterator loc, size_type num, const TYPE &val)
在指定位置loc前插入num个值为val的元素 
插入2个C到vector中 
输出是:CCABCD 
*/

vector <char>::iterator it1 = letter.begin(); 
letter.insert( it1, 2, 'C'); 
for( it1 = letter.begin(); it1 != letter.end(); it1++ ) cout<<*it1; 
cout<<endl;
/*
2.iterator insert( iterator loc, const TYPE &val ); 
在指定位置loc前插入值为val的元素,返回指向这个元素的迭代器
输出是:CCABCDH
*/ 

vector <char>::iterator it2 = letter.end()-1; 
letter.insert( it2+1,'H'); 
for( it2 = letter.begin(); it2 != letter.end(); it2++ ) cout<<*it2; 
cout<<endl;
/*
3.void insert( iterator loc, input_iterator start, input_iterator end ); 
在指定位置loc前插入区间[start, end)的所有元素 
输出是:CBCDCABCDH
*/

vector <char>::iterator it3 = letter.begin(); 
letter.insert( it3+1,it3+3,it3+6); 
for( it3 = letter.begin(); it3 != letter.end(); it3++ ) cout<<*it3; 
return 0;
}
原创粉丝点击