zoukankan      html  css  js  c++  java
  • stl的stack在开发中的应用

    栈有后进先出特点,我们可以用它来暂时保存数据,在画板开发中,我用到了栈来保存用户的每一步操作,当用户点击撤销时可以把图像从栈里面取出,然后恢复。浏览器的前进和后退也是这个原理,只是它保存的是网页罢了。用stl可以轻松使用栈而不用去做复杂的函数定义,看下面的实例,希望通过下面的实例,让大家了解怎么用stl中的stack以及如何使用栈

    复制代码
    #include <graphics.h>
    #include <iostream>
    #include <conio.h>
    #include <stack>
    using namespace std;
    int main()
    {
    stack<IMAGE>s1;
    IMAGE img,hh;
    initgraph(600,600);
    //清屏压栈
    cleardevice();
    getimage(&img,0,0,600,600);
    s1.push(img);
    //画圈压栈
    circle(100,100,50);
    getimage(&img,0,0,600,600);
    s1.push(img);
    getch();
    //画线压栈
    line(1,1,600,600);
    getimage(&img,0,0,600,600);
    s1.push(img);
    getch();
    //清屏
    cleardevice();
    getch();
    //依次出栈
    hh=s1.top();
    putimage(0,0,&hh);
    getch();
    s1.pop();
    hh=s1.top();
    putimage(0,0,&hh);
    getch();
    s1.pop();
    hh=s1.top();
    putimage(0,0,&hh);
    getch();
    s1.pop();
    }
    复制代码

     


    博主ma6174对本博客文章(除转载的)享有版权,未经许可不得用于商业用途。转载请注明出处http://www.cnblogs.com/ma6174/

    对文章有啥看法或建议,可以评论或发电子邮件到ma6174@163.com


    本文转自ma6174博客园博客,原文链接:http://www.cnblogs.com/ma6174/archive/2011/12/06/2277508.html,如需转载请自行联系原作者
  • 相关阅读:
    Java 和因特网
    永久性
    在计算机编程中,一个基本的概念就是同时对多个任务加以控制
    违例控制:解决错误
    清除时的困境:由谁负责清除?
    集合库与方便使用集合
    单根结构
    集合与继承器
    对象的创建和存在时间
    抽象的基础类和接口
  • 原文地址:https://www.cnblogs.com/twodog/p/12139179.html
Copyright © 2011-2022 走看看