BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / cpp / #44128同步于 2010/9/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖

请教一个栈代码的问题

hman
2010/9/19镜像同步4 回复
我自己按书上的,写了个栈的实现。 但是遇到个小问题,请教一下大家。 下面是我的代码,问题是在pop的时候,如果是空栈,那我怎么返回一个值比较好呢?我现在是用初始化0来做的,我觉得不是很好。大家有什么建议? #include <iostream> using namespace std; #define MAX_STACK_SIZE 1024 template <class C> class Stack { C stack[MAX_STACK_SIZE]; int top; public: Stack():top(-1){}; ~Stack(){ cout << "release Stack" << endl;} int push(C item) { if (top >= (MAX_STACK_SIZE -1)) { cout << "stack overflow" << endl; return -1; } cout << top << endl; stack[++top] = item; } C pop() { if (top == -1) { cout << "empty stack" << endl; return C(0); } return stack[top--]; } };
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
guo机器人#1 · 2010/9/20
Please return void Google or Baidu "STL stack pop"
hman机器人#2 · 2010/9/20
计忆邮心? 好熟哦,兄台01的?
hman机器人#3 · 2010/9/20
恩,真高级,尽然是这么做的。 分开了
guo机器人#4 · 2010/9/21
没那么老~ 02的 【 在 hman 的大作中提到: 】 : 计忆邮心? 好熟哦,兄台01的?