stack.cpp
来自「这我们老师对是面向对象程序设计(清华大学出版社)一书制作的PPT」· C++ 代码 · 共 40 行
CPP
40 行
#include <iostream.h>
class Stack {
public:
enum { MaxStack = 5 };
Stack() { top = -1; }
void push( int n ) {
if ( isFull() ) {
errMsg( "Full stack. Can't push." );
return;
}
arr[ ++top ] = n;
}
int pop() {
if ( isEmpty() ) {
errMsg( "Empty stack. Popping dummy value." );
return dummy_val;
}
return arr[ top-- ];
}
bool isEmpty() { return top < 0; }
bool isFull() { return top >= MaxStack - 1; }
private:
void errMsg( const char* msg ) const {
cerr << "\n*** Stack operation failure: " << msg << '\n';
}
int top;
int arr[ MaxStack ];
int dummy_val;
};
void main()
{
Stack s;
for (int i=1;i<=5;i++)
s.push(i);
s.push(6);
for (i=1;i<=5;i++)
cout<<s.pop();
cout<<s.pop();
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?