STL——容器(deque)deque 的插入 insert()
Posted coocochoco
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了STL——容器(deque)deque 的插入 insert()相关的知识,希望对你有一定的参考价值。
deque.insert(pos,elem);
//在pos位置插入一个elem元素的拷贝,返回新数据的位置。
1 #include <iostream> 2 #include <deque> 3 4 using namespace std; 5 6 int main() 7 { 8 deque<int> deqInt_A, deqInt_B; 9 10 deqInt_A.push_back(1); 11 deqInt_A.push_back(2); 12 deqInt_A.push_back(3); 13 14 cout << "遍历deqInt_A" << endl; 15 for (deque<int>::iterator it = deqInt_A.begin(); it != deqInt_A.end(); it++) 16 { 17 cout << *it << " "; 18 } 19 20 //在首位置插入1个数 21 deqInt_A.insert(deqInt_A.begin(), 0); 22 23 cout << " insert 插入后,遍历deqInt_A" << endl; 24 for (deque<int>::iterator it = deqInt_A.begin(); it!= deqInt_A.end(); it++) 25 { 26 cout << *it << " "; 27 } 28 29 return 0; 30 }
打印结果:
deque.insert(pos,n,elem);
//在pos位置插入n个elem数据,无返回值。
1 #include <iostream> 2 #include <deque> 3 4 using namespace std; 5 6 int main() 7 { 8 deque<int> deqInt_A, deqInt_B; 9 10 deqInt_A.push_back(1); 11 deqInt_A.push_back(2); 12 deqInt_A.push_back(3); 13 14 cout << "遍历deqInt_A" << endl; 15 for (deque<int>::iterator it = deqInt_A.begin(); it != deqInt_A.end(); it++) 16 { 17 cout << *it << " "; 18 } 19 20 //在首位置+1处 插入2个0 21 deqInt_A.insert(deqInt_A.begin() + 1, 2, 0); 22 23 cout << " insert 插入后,遍历deqInt_A" << endl; 24 for (deque<int>::iterator it = deqInt_A.begin(); it!= deqInt_A.end(); it++) 25 { 26 cout << *it << " "; 27 } 28 29 return 0; 30 }
打印结果:
deque.insert(pos,beg,end);
//在pos位置插入[beg,end)区间的数据,无返回值
1 #include <iostream> 2 #include <deque> 3 4 using namespace std; 5 6 int main() 7 { 8 deque<int> deqInt_A, deqInt_B; 9 10 deqInt_A.push_back(1); 11 deqInt_A.push_back(2); 12 deqInt_A.push_back(3); 13 14 deqInt_B.push_back(10); 15 deqInt_B.push_back(20); 16 deqInt_B.push_back(30); 17 18 cout << "遍历deqInt_A" << endl; 19 for (deque<int>::iterator it = deqInt_A.begin(); it != deqInt_A.end(); it++) 20 { 21 cout << *it << " "; 22 } 23 cout << " 遍历deqInt_B" << endl; 24 for (deque<int>::iterator it = deqInt_B.begin(); it != deqInt_B.end(); it++) 25 { 26 cout << *it << " "; 27 } 28 29 //在首位置+1处 插入deqInt_B 30 deqInt_A.insert(deqInt_A.begin() + 1, deqInt_B.begin(), deqInt_B.end()); 31 cout << " 在首位置+1处 插入deqInt_B" << endl; 32 for (deque<int>::iterator it = deqInt_A.begin(); it!= deqInt_A.end(); it++) 33 { 34 cout << *it << " "; 35 } 36 37 return 0; 38 }
打印结果:
===================================================================================================================
以上是关于STL——容器(deque)deque 的插入 insert()的主要内容,如果未能解决你的问题,请参考以下文章
deque容器系列二基于STL源码分析deque容器插入和删除时内存都是怎么变动的
deque容器系列二基于STL源码分析deque容器插入和删除时内存都是怎么变动的
deque容器系列二基于STL源码分析deque容器插入和删除时内存都是怎么变动的