我是靠谱客的博主 老实睫毛,最近开发中收集的这篇文章主要介绍STL容器使用DEMO-deque,觉得挺不错的,现在分享给大家,希望可以做个参考。

Code:
  1. //   
  2. //  CopyRight(c) 2009, YOYO, All Rights Reserved.   
  3. //  Author: LIN YiQian   
  4. //  Created: 2009/08/24   
  5. //  Describe: STL deque 使用DEMO   
  6. //   
  7. #include <iostream>   
  8. #include <deque>   
  9.   
  10. using namespace std;   
  11.   
  12. typedef deque<int> INT_DEQ;   
  13.   
  14. // 打印Deque   
  15. void PrintDeque(INT_DEQ deqInt)   
  16. {   
  17.     for (INT_DEQ::iterator deqIter = deqInt.begin(); deqIter != deqInt.end(); ++deqIter)   
  18.     {   
  19.         cout << *deqIter;   
  20.     }   
  21.     cout << endl;   
  22. }   
  23.   
  24. // 逆向打印Deque   
  25. void PrintDequeReverse(INT_DEQ deqInt)   
  26. {   
  27.     for (INT_DEQ::reverse_iterator deqRIter = deqInt.rbegin(); deqRIter != deqInt.rend(); ++deqRIter)   
  28.     {   
  29.         cout << *deqRIter;   
  30.     }   
  31.     cout << endl;   
  32. }   
  33.   
  34. void main(void)   
  35. {   
  36.     INT_DEQ deqInt1;   
  37.     cout << "deqInt1: "; PrintDeque(deqInt1);   
  38.   
  39.     //  push_front() & push_back()   
  40.     {   
  41.         deqInt1.push_front(3);   
  42.         deqInt1.push_front(4);   
  43.         deqInt1.push_back(6);   
  44.         deqInt1.push_back(9);   
  45.         cout << "deqInt1 after Push: "; PrintDeque(deqInt1);   
  46.     }   
  47.   
  48.     //  reverse()   
  49.     {   
  50.         cout << "deqInt1 Reverse: "; PrintDequeReverse(deqInt1);   
  51.     }   
  52.   
  53.     //  size()   
  54.     {   
  55.         cout << "deqInt1 size: " << deqInt1.size() << endl;   
  56.     }   
  57.   
  58.     //  max_size()   
  59.     {   
  60.         cout << "deqInt1 max_size: " << deqInt1.max_size() << endl;   
  61.     }   
  62.   
  63.     INT_DEQ deqInt2(5, 5);   
  64.     cout << "deqInt2(5, 5): "; PrintDeque(deqInt2);   
  65.   
  66.     //  erase()   
  67.     {   
  68.         deqInt2.erase(deqInt2.begin()+2);   
  69.         cout << "deqInt2 after Erase: "; PrintDeque(deqInt2);   
  70.   
  71.         deqInt2.erase(deqInt2.begin()+1, deqInt2.end()-1);   
  72.         cout << "deqInt2 after Erase: "; PrintDeque(deqInt2);   
  73.     }   
  74.   
  75.     //  empty()   
  76.     {   
  77.         cout << "deqInt2 empty?: " << boolalpha << deqInt2.empty();   
  78.     }   
  79.   
  80.     INT_DEQ deqInt3(deqInt1);   
  81.     cout << "deqInt3(deqInt1): "; PrintDeque(deqInt3);   
  82.   
  83.     //  pop_front() & pop_back()   
  84.     {   
  85.         deqInt3.pop_front();   
  86.         deqInt3.pop_back();   
  87.         cout << "deqInt3 after Pop: "; PrintDeque(deqInt3);   
  88.     }   
  89.   
  90.     //  assign()   
  91.     {   
  92.         deqInt3.assign(6, 6);   
  93.         cout << "deqInt3 after Assign: "; PrintDeque(deqInt3);   
  94.     }   
  95.   
  96.     INT_DEQ deqInt4(deqInt3.begin()+2, deqInt3.end());   
  97.     cout << "deqInt4(deqInt3.begin()+2, deqInt3.end()): "; PrintDeque(deqInt4);   
  98.   
  99.     //  at() and operator[]   
  100.     {   
  101.         cout << "deqInt4 at(3): " << deqInt4.at(3) << endl;   
  102.         cout << "deqInt4[2]: " << deqInt4[2] << endl;   
  103.     }   
  104.        
  105.     //  front() and back()   
  106.     {   
  107.         cout << "deqInt4 front: " << deqInt4.front() << endl;   
  108.         cout << "deqInt4 back: " << deqInt4.back() << endl;   
  109.     }   
  110.   
  111.     //  operator cmp   
  112.     {   
  113.         cout << "deqInt4 == deqInt2?: " << boolalpha << (deqInt4 == deqInt2) << endl;   
  114.         cout << "deqInt4 >= deqInt2?: " << boolalpha << (deqInt4 >= deqInt2) << endl;   
  115.     }   
  116.   
  117.     //  swap()   
  118.     {   
  119.         deqInt4.swap(deqInt1);   
  120.         cout << "deqInt1 after Swap: "; PrintDeque(deqInt1);   
  121.         cout << "deqInt4 after Swap: "; PrintDeque(deqInt4);   
  122.     }   
  123.   
  124.     //  clear()   
  125.     {   
  126.         deqInt4.clear();   
  127.         cout << "deqInt4 after Clear: "; PrintDeque(deqInt4);   
  128.         cout << "deqInt4 size: " << deqInt4.size() << endl;   
  129.         cout << "deqInt4 empty?: " << boolalpha << deqInt4.empty() << endl;   
  130.     }   
  131.   
  132.     system("pause");   
  133. }  

 

最后

以上就是老实睫毛为你收集整理的STL容器使用DEMO-deque的全部内容,希望文章能够帮你解决STL容器使用DEMO-deque所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部