亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C++stack模板類

2019-11-06 07:48:44
字體:
來源:轉載
供稿:網友

stack 介紹

棧是一種容器適配器,特別為后入先出而設計的一種(LIFO ),那種數據被插入,然后再容器末端取出棧實現了容器適配器,這是用了一個封裝了的類作為他的特定容器,提供了一組成員函數去訪問他的元素,元素從特定的容器,也就是堆棧的頭取出袁術。

這個基礎的容器可能是任何標準的容器類,和一些其他特殊設計的模板類,唯一的要求就是要支持一下的操作

[cpp] view plain copy<span style="font-size:16px;"><strong>?</strong>back()   ?push_back()   ?pop_back()</span>   

 

因此,標準的容器類模板vector, deque 和list可以使用,默認情況下,如果沒有容器類被指定成為一個提別的stack 類,標準的容器類模板就是deque 隊列。

//常用模型stackr<int,vector<int>>;stack<int,deque<int>>;stack<int,list<int>>;//默認stack<int,deque<int>>;

實現C++  STL,棧有兩個參數。

template < class T, class Container = deque<T> > class stack;

參數示意:

T: 元素類型Container: 被用于存儲和訪問元素的的類型

成員函數

stack::stack

explicit stack ( const Container& ctnr = Container() );

用于構造一個棧適配器對象。

ctnrContainer objectContainer is the second class template parameter (the type of the underlying container for thestack; by default: deque<T>, see class description).[cpp] view plain copy// test_stack.cpp : 定義控制臺應用程序的入口點。  //    #include "stdafx.h"  #include <stack>  #include <vector>  #include <deque>  #include <iostream>    using namespace std;    int _tmain(int argc, _TCHAR* argv[])  {      deque<int> mydeque(2,100);      vector<int> myvector(2,200);        stack<int> first;      stack<int> second(mydeque);        stack<int,vector<int> > third;      stack<int,vector<int> > fourth(myvector);        cout << "size of first: " << (int) first.size() << endl;      cout << "size of second: " << (int) second.size() << endl;      cout << "size of third: " << (int) third.size() << endl;      cout << "size of fourth: " << (int) fourth.size() << endl;          return 0;  }  

output:

size of first: 0size of second: 3size of third: 0size of fourth: 2

stack::empty

bool empty ( ) const;

判斷是否為空。

Return Value

true if the container size is 0false otherwise.

[cpp] view plain copy// stack::empty  #include <iostream>  #include <stack>  using namespace std;    int main ()  {    stack<int> mystack;    int sum (0);      for (int i=1;i<=10;i++) mystack.push(i);      while (!mystack.empty())    {       sum += mystack.top();       mystack.pop();    }      cout << "total: " << sum << endl;        return 0;  }  

Output:

total: 55

stack::pop

void pop ( );

在棧的頂部移除元素。

 

[cpp] view plain copy // stack::push/pop  #include <iostream>  #include <stack>  using namespace std;    int main ()  {    stack<int> mystack;      for (int i=0; i<5; ++i) mystack.push(i);      cout << "Popping out elements...";    while (!mystack.empty())    {       cout << " " << mystack.top();       mystack.pop();    }    cout << endl;      return 0;  }  

 

Output:

Popping out elements... 4 3 2 1 0

 

stack::push

void push ( const T& x );

在棧頂添加元素

[cpp] view plain copy // stack::push/pop  #include <iostream>  #include <stack>  using namespace std;    int main ()  {    stack<int> mystack;      for (int i=0; i<5; ++i) mystack.push(i);      cout << "Popping out elements...";    while (!mystack.empty())    {       cout << " " << mystack.top();       mystack.pop();    }    cout << endl;      return 0;  }  

Output:

Popping out elements... 4 3 2 1 0

stack::size

 
size_type size ( ) const;

計算棧對象元素個數

 

[cpp] view plain copy // stack::size  #include <iostream>  #include <stack>  using namespace std;    int main ()  {    stack<int> myints;    cout << "0. size: " << (int) myints.size() << endl;      for (int i=0; i<5; i++) myints.push(i);    cout << "1. size: " << (int) myints.size() << endl;      myints.pop();    cout << "2. size: " << (int) myints.size() << endl;      return 0;  }  

Output:

0. size: 01. size: 52. size: 4

stack::top

 
      value_type& top ( );const value_type& top ( ) const;

返回棧頂元素

[cpp] view plain copy// test_stack.cpp : 定義控制臺應用程序的入口點。  //    #include "stdafx.h"  #include <stack>  #include <vector>  #include <deque>  #include <iostream>    using namespace std;    int _tmain(int argc, _TCHAR* argv[])  {      stack<int> mystack;      mystack.push(10);      mystack.push(20);      mystack.top()-=5;      cout << "mystack.top() is now " << mystack.top() << endl;        return 0;  }  

Output:

mystack.top() is now 15

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲美女在线视频| 国产视频福利一区| 亚洲乱码av中文一区二区| 国产精品扒开腿做爽爽爽男男| 国产精品三级久久久久久电影| 国产精品久久久久久中文字| 最新69国产成人精品视频免费| 亚洲午夜av电影| 欧美一级大片在线免费观看| 57pao国产精品一区| 成人精品久久av网站| 国产精品久久久久av| 久久精品视频在线播放| 国产精品高潮呻吟久久av野狼| 国产精品网红福利| 8x海外华人永久免费日韩内陆视频| www.日韩系列| 久久成人人人人精品欧| 日韩hd视频在线观看| 亚洲人成自拍网站| 成人欧美一区二区三区在线湿哒哒| 久久久噜噜噜久噜久久| 欧美国产日韩中文字幕在线| 亚洲开心激情网| 欧美成人免费va影院高清| 国产精品久久999| 国产精品综合不卡av| 亚洲成人精品久久久| 欧美国产日产韩国视频| 97视频com| 91国产美女在线观看| 亚洲欧美日韩一区二区在线| 川上优av一区二区线观看| 成人在线一区二区| 国产精品成人一区| 国产精品 欧美在线| 91成人在线观看国产| 欧美中在线观看| 久久视频这里只有精品| 欧美性猛交xxxx久久久| 亚洲韩国欧洲国产日产av| 热久久免费视频精品| 少妇高潮 亚洲精品| 精品国产依人香蕉在线精品| 亚洲自拍小视频免费观看| 97国产精品视频人人做人人爱| 亚洲第一在线视频| 爽爽爽爽爽爽爽成人免费观看| 成人中文字幕在线观看| 国产精品视频专区| 欧美日产国产成人免费图片| 欧美交受高潮1| 国产成人精品午夜| 久久久久久久久久久亚洲| 最近2019中文字幕在线高清| 国产精品视频内| 亚洲欧美日韩中文视频| 亚洲欧洲美洲在线综合| 日韩视频永久免费观看| 欧美日韩福利电影| 欧美日韩一区二区在线播放| 国产精品高清网站| 欧美日韩国产精品一区| 日韩在线观看高清| 国产精品久久久久久av下载红粉| 日韩精品在线免费观看| 国产在线播放不卡| 久久亚洲国产成人| 欧美国产日韩中文字幕在线| 国产精品羞羞答答| 在线观看免费高清视频97| 在线国产精品视频| 国产精品尤物福利片在线观看| 亚洲高清一二三区| 国产午夜精品免费一区二区三区| 91精品久久久久久久久| 国内精品久久久久影院优| 国内精品美女av在线播放| 亚洲第一精品久久忘忧草社区| 欧美综合在线第二页| 全亚洲最色的网站在线观看| 色视频www在线播放国产成人| 色先锋资源久久综合5566| 欧美激情极品视频| 91免费精品视频| 国产亚洲一区二区在线| 中文字幕日韩综合av| 国产91精品网站| 亚洲免费福利视频| 98精品国产高清在线xxxx天堂| 国产精品精品久久久| 欧美精品一区二区三区国产精品| 亚洲免费人成在线视频观看| 国产亚洲a∨片在线观看| 疯狂做受xxxx高潮欧美日本| 日韩成人在线网站| 欧美成人免费全部| 日韩中文字幕国产精品| 一区三区二区视频| 中文字幕精品国产| 成人情趣片在线观看免费| 久久久久久久网站| 91精品国产777在线观看| 欧美一区视频在线| 2019中文字幕在线| 97在线看免费观看视频在线观看| 久久人人爽人人爽人人片av高清| 91精品久久久久久久久不口人| 日韩在线观看免费网站| 日本精品免费一区二区三区| 97婷婷大伊香蕉精品视频| 亚洲精品ady| 欧美黄色片免费观看| 国产精品高潮呻吟久久av无限| 日韩美女视频免费在线观看| 国产精品无码专区在线观看| 欧美性xxxx极品高清hd直播| 国产69精品久久久久99| 国产精品99久久久久久久久久久久| 亚洲精品欧美一区二区三区| 欧美在线视频在线播放完整版免费观看| 亚洲丝袜av一区| 秋霞成人午夜鲁丝一区二区三区| 66m—66摸成人免费视频| 国产欧美一区二区白浆黑人| 久久99精品久久久久久青青91| 精品一区二区亚洲| 精品国内亚洲在观看18黄| 国产精品欧美日韩| 久久久久久网站| 国产suv精品一区二区| 亚洲成人黄色在线观看| 欧美在线免费观看| 18性欧美xxxⅹ性满足| 中文国产成人精品久久一| 成人国产精品一区二区| 中国日韩欧美久久久久久久久| 最近2019中文字幕在线高清| 国产亚洲精品日韩| 亚洲福利精品在线| 高清欧美性猛交xxxx黑人猛交| 性色av一区二区咪爱| 国产亚洲人成网站在线观看| 国产精品高潮呻吟久久av无限| 欧美视频中文字幕在线| www高清在线视频日韩欧美| 伊人久久久久久久久久久| 中文字幕亚洲情99在线| 国产国语videosex另类| 久久久久国产精品www| 国产精品专区第二| 亚洲福利视频二区| 亚洲精品美女久久久久| 1769国内精品视频在线播放| 国产精品国语对白| 久久99久久亚洲国产| 亚洲欧美制服中文字幕| 欧美另类暴力丝袜| 欧美日韩国产综合新一区| 亚洲视频在线视频| 在线国产精品播放| 欧美在线观看网址综合| 亚洲香蕉伊综合在人在线视看| 色偷偷av一区二区三区乱|