数据结构:一个简单的栈模型

//学习数据结构后的一点心得体会

//stack.h文件:

#pragma once
#ifndef STACK_H
#define STACK_H

#include <stdexcept>
using namespace std;

template<class Entry, size_t Max>
class Stack
{
private:
size_t count;
Entry data[Max];

public:
Stack() {count = 0;}
bool empty() {return count == 0;}
void push(const Entry &e)
{
if(count == Max)throw exception("栈已满。");
data[count] = e;
count++;
}
void pop()
{
if(count == 0)throw exception("栈已空。");
count--;
}
Entry top()
{
if(count == 0)throw exception("栈已空。");
return data[count - 1];
}

};

#endif

//main.cpp文件:

#include "stack.h"

#include <iostream>
using namespace std;

int main()
{
    Stack<int, 100> psgs;
    int n;
    cout << "请输入游客人数:" << endl;
     cin >> n;
    cout << "按顺序输入乘客编号:" << endl;
    for(int i = 0; i < n; i++)
     {
         int item;
         cin >> item;
        psgs.push(item);
    }
    cout << "乘客下车次序是:" << endl;
    while(!psgs.empty())
    {
        cout << psgs.top() << ' ';
        psgs.pop();
    }
    cout << endl;
    system("pause");
    return 0;
}

以后还是多写点原创的内容吧。。。

博客不知不觉中建了四个月

我记着那天是学院歌咏比赛 我记得有一个班唱着“写代码 写代码 一行程序七个bug”

当天我就弄好了博客

毕竟我是搞这行的 不写点原创真的对不起郭嘉对不起社会了。。

本人小菜 大牛勿喷

体育课1000米跑的成绩较历史同期相比无任何变化 累死人 匿了。。

说说Win7的Aero效果

最近看到别人写的一个例程,就是把控制台弄成了全透明,我把源码下载下来做了研
究。

其实从Vista版本之后,WindowsAPI里面增加了几个函数,用于Aero效果的实现。有
两个最主要的:DwmExtendFrameIntoClientArea和DwmIsCompositionEnabled。

DwmIsCompositionEnabled用于检测系统的桌面组合功能是否打开。
DwmExtendFrameIntoClientArea用于开启控制窗体的玻璃效果,他需要一个名为
MARGINS的结构作为参数,表达的是窗口四周的边框。我们实际上就是要非客户区的
边框往内扩展,等到MARGINS足够大之后,就变成全玻璃特效的了。

下面是两个实例:

更多内容

C#多线程Invoke示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public void DoWork()
{
//错误示例:
textbox1.text = "Hello";

//正确示例:
textbox1.Invoke((str) => textbox1.text = str, new Object[]{ "Hello" });
}

private void button1_Click(object sender, EventArgs e)
{
//...
Thread tr = new Thread(new ThreadStart(DoWork));
tr.Start();
//...
}

TwentyEleven暗色系主题实现透明

1.找到 /wp-content/themes/twentyeleven/colors/dark.css

2.第13行左右(#page background)改为
background: rgba(15,15,15,0.5);

3.第57行左右(#branding border-top)改为
border-top: 2px solid rgba(10, 10, 10, 0);

4.第82行左右(#access background)改为
background: -webkit-linear-gradient(rgba(56, 56, 56, 0), rgba(39, 39, 39, 1));

5.第587行左右(#site-generator background)改为
background: rgba(6, 6, 6, 0);

6.保存 如果安装了缓存插件请先更新缓存 然后就能看到了 其实大家可以用chrome的开发工具调整css看效果 很方便的