温故而知新----stack

Posted 龙小爱编程

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了温故而知新----stack相关的知识,希望对你有一定的参考价值。

stack:栈,先进后出,操作方法相对其它容器来说比较少,具有以下特性:
1、LIFO 后进先出,与队列相反,队列时FIFO(先进先出)
2、没有迭代器访问。
3、C++ 11标准中新增了两个接口,如下:
      emplace():在栈顶添加一个新元素
      swap():两个栈相互交互,如:栈A大小2,栈B大小3,交换后栈A大小3,栈B大小2
其它方法测试代码如下:

#include <iostream>
#include <stack>
using namespace std;
int main(int argc, char *argv[]) {
	int iRet = 0;
	std::stack<int> mystack;
	for (int i=0; i<5; ++i) mystack.push(i);//initialize the stack,0,1,2,3,4
	std::cout<<"stack size......";
	std::cout<<mystack.size()<<std::endl;
	std::cout << "Popping out elements...";
	while (!mystack.empty()){
		std::cout << \' \' << mystack.top();//top stack 4,3,2,1,0
		mystack.pop();//pop stack 4,3,2,1,0
	}
	std::cout << \'\\n\';
	if(mystack.empty()) std::cout<<"mystack is empty...."<<std::endl;
	std::cout<<"afther pop mystack size:"<<mystack.size()<<std::endl;
	std::cout<<"use c++ 11 standard funcation initialize stack mystack....."<<std::endl;
	return iRet;
}

 结果输出如下:

 

以上是关于温故而知新----stack的主要内容,如果未能解决你的问题,请参考以下文章

js 温故而知新 webkitTransitionEnd 监听Transition动画结束事件

Back Stack 未维护 - 如何防止 Fragment 被破坏?

运行时错误:“stack around the variable…was corrupted”

Android - 在单个活动应用程序中使用工具栏按钮弹出 Back Stack

代码“小白”的温故而知新-----OA管理系统

温故而知新,感想