C++ STACK 入门

转自  北齐风凉 的博客

http://my.oschina.net/Tsybius2014/blog/293618

1.Stack类学习

1)建立stack<string>

2)调用push函数将数据压入栈中

3)调用size函数查看当前栈内元素数量

4)调用empty函数检测栈是否为空

5)如果不为空则不断调用pop函数将元素从栈中取出(后入先出)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
#include <stack>
 
using  namespace  std;
 
int  main()
{
     stack<string> stkNameList;
 
     stkNameList.push( "Tsybius" ); 
     cout <<  "Push: "  << stkNameList.top() << endl;
     stkNameList.push( "Galatea" );
     cout <<  "Push: "  << stkNameList.top() << endl;
 
     cout <<  "Stack size: "  << stkNameList.size() << endl;
 
     while (!stkNameList.empty())
     {
         cout <<  "Pop: "  << stkNameList.top()  << endl;
         stkNameList.pop();
     }
 
     return  0;
}

运行结果

2.Queue类学习

1)建立queue<string>

2)调用push函数将元素加入queue

3)调用size函数查看队列内元素数量

4)调用front和back函数查看队列首位元素

5)调用empty函数查看队列是否为空

6)如果队列不为空则调用pop函数将元素从队列中取出(先入先出)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
#include <queue>
 
using  namespace  std;
 
int  main()
{
     queue<string> queNameList;
 
     queNameList.push( "Tsybius" );
     cout <<  "Push: Tsybius"  << endl;
     queNameList.push( "Galatea" );
     cout <<  "Push: Galatea"  << endl;
     queNameList.push( "Gnaeus" );
     cout <<  "Push: Gnaeus"  << endl;
 
     cout <<  "Queue Size: "  << queNameList.size() << endl;
     cout <<  "Front: "  << queNameList.front() << endl;
     cout <<  "Back: "  << queNameList.back() << endl;
 
     while (!queNameList.empty())
     {
         cout <<  "Pop: "  << queNameList.front() << endl;
         queNameList.pop();
     }
 
     return  0;
}

运行结果

END

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
C++标准函数库中80%是STL,其中广泛使用了泛性编程思想,在其中分为几大部分。 1:语言支持部分。 2:诊断部分。包含了异常处理,断言,错误代码三大方式。 3:通用工具部分。包括动态内存管理工具,日期/时间处理工具等。 4:字符串处理部分。 5:国际化部分。使用Locale和facet可以为程序提供多国际化支持,包括各种字符集,日期时间,数值货币处理的支持。 6:容器(containers)部分。STL重要部分,包含了许多数据结构,有vector(动态增加的数组),queue(队列),stack(堆栈)……甚至也包括string,它也可以看做为一种容器,并且适用所有的容器可用的方法。 7:算法(algorithms)部分。STL重要部分,包含了70多个通用算法,都是优化的效率很高的,用来控制各种容器,内建数组等。例如find可以用来在容器中查找某特定值的元素,for_each可以用来将函数应用到容器元素之上,sort用于对容器中的元素排序。 8;迭代器(iterators)STL重要组成部分,每个容器都有自己的迭代器,只有容器才可以行访问自己的元素,它类似指针,将算法和容器中的元素联系起来。 9:数值(numerics)部分。包含了一些数学运算的功能库,对复数运算提供了支持。 10:输入输出(I/O)部分。摸版化的IOStream部分。他提供了对C++程序的支持,并且对原有的iostream兼容。 所以,总体看来,C++标准函数库,包含的10大块内容中,STL主要包含了四个部分,迭代器,容器,算法。和额外的一个字符串

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值