¡¡¡¡Ë³ÐòÕ»¸÷ÖÖ»ù±¾ÔËËãËã·¨µÄʵÏÖ
¡¡¡¡Õ»ÊÇÖ»ÄÜÔÚijһ¶Ë²åÈëºÍɾ³ýµÄÌØÊâÏßÐÔ±í¡£Ëü°´ÕÕºó½øÏȳöµÄÔÔò´æ´¢Êý¾Ý£¬ÏȽøÈëµÄÊý¾Ý±»Ñ¹ÈëÕ»µ×(push)£¬×îºóµÄÊý¾ÝÔÚÕ»¶¥(top)£¬ÐèÒª¶ÁÊý¾ÝµÄʱºò´ÓÕ»¶¥¿ªÊ¼µ¯³öÊý¾Ý(top)×îºóÒ»¸öÊý¾Ý±»µÚÒ»¸ö¶Á³öÀ´¡£

¡¡¡¡Õ»ÖÐÊý¾ÝÓÃÊý×é´¢´æ£¬Í¨¹ýtop()£¬push()£¬pop()»ù±¾µÄº¯ÊýÓÃÒÔʵÏ֯书ÄÜ£¬´ËÍâÎÒ»¹Ôö¼ÓÁËclear()º¯ÊýÓÃÒÔÇå³ýÕ»ÖÐÏÖÓеÄËùÓÐÔªËØ
¡¡¡¡¡¾ÊµÑé˵Ã÷¡¿
¡¡¡¡ÎÒÑ¡ÔñµÄÌâÄ¿£ºÊéÖÐcalculatorµÄ±àдÓë¸Ä½ø
¡¡¡¡1.·ÖÎöջҪʵÏֵŦÄÜ´Ó¶øÈ·¶¨Õ»ÀàµÄ¼¸ÖÖ»ù±¾³ÉÔ±º¯Êý¡ª¡ªpop(),pop(),top(),clear(),È·¶¨Õ»ÖÐÒÔÊý×éʵÏÖÊý¾ÝµÄ´æ´¢´Ó¶øÈ·¶¨Õ»µÄ³ÉÔ±º¯Êý¡ª¡ªStack_entry entry[],count(¼Ç¼ջÖÐÊý¾ÝÊýÁ¿)
¡¡¡¡2.±àдջµÄÍ·Îļþ¼°ÊµÏÖ
¡¡¡¡3.Ñ¡ÔñÊéÖмÆËãÆ÷µÄ³ÌÐòÒÔÑéÖ¤Õ»µÄ¸÷ÖÖ»ù±¾ÔËËã¡£·ÖÎöÊéÖÐË㷨˼·¼°¶ÔÕ»µÄÔËÓã¬Ìá³ö¿ÉÒԸĽøµÄµØ·½¡ª¡ª½«¼ÆËãÆ÷¹¦ÄÜ·â×°µ½ÀàÖУ¬²¢Ôö¼ÓÇå¿ÕÕ»µÄ¹¦ÄÜ¡£
¡¡¡¡4.±àд¼ÆËãÆ÷ÀàµÄÍ·Îļþ¼°ÀàµÄʵÏÖ
¡¡¡¡5.Ö÷º¯ÊýÖÐͨ¹ý¼òµ¥µÄ´´½¨MyClaculatorÑéÖ¤³ÌÐò£¬²¢ÊÔÑé¸÷ÖÖ»ù±¾¹¦ÄÜ¡£

¡¡¡¡¡¾Ïà¹Ø´úÂë¡¿
¡¡¡¡Stack.h
¡¡¡¡[cpp] view plaincopyprint
¡¡¡¡#ifndef STACK_H
¡¡¡¡#define STACK_H
¡¡¡¡enum Error_code{success,underflow,overflow};
¡¡¡¡const int stackmax=10;
¡¡¡¡typedef double Stack_entry;
¡¡¡¡class Stack{
¡¡¡¡public:
¡¡¡¡Stack();
¡¡¡¡bool empty() const;
¡¡¡¡Error_code pop();
¡¡¡¡Error_code push(const Stack_entry &item);
¡¡¡¡Error_code top(Stack_entry &item) ;
¡¡¡¡Error_code clear();
¡¡¡¡private:
¡¡¡¡Stack_entry entry[stackmax];
¡¡¡¡int count;
¡¡¡¡};
¡¡¡¡#endif
¡¡¡¡#ifndef STACK_H
¡¡¡¡#define STACK_H
¡¡¡¡enum Error_code{success,underflow,overflow};
¡¡¡¡const int stackmax=10;
¡¡¡¡typedef double Stack_entry;
¡¡¡¡class Stack{
¡¡¡¡public:
¡¡¡¡Stack();
¡¡¡¡bool empty() const;
¡¡¡¡Error_code pop();
¡¡¡¡Error_code push(const Stack_entry &item);
¡¡¡¡Error_code top(Stack_entry &item) ;
¡¡¡¡Error_code clear();
¡¡¡¡private:
¡¡¡¡Stack_entry entry[stackmax];
¡¡¡¡int count;
¡¡¡¡};
¡¡¡¡#endif
¡¡¡¡Stack.cpp
¡¡¡¡[cpp] view plaincopyprint
¡¡¡¡#include"stack.h"
¡¡¡¡//implemention
¡¡¡¡//Stack()
¡¡¡¡Stack::Stack(){
¡¡¡¡count=0;
¡¡¡¡}
¡¡¡¡//pop()
¡¡¡¡Error_code Stack::pop(){
¡¡¡¡Error_code outcome=success;
¡¡¡¡if(count==0)
¡¡¡¡outcome=underflow;
¡¡¡¡else
¡¡¡¡count--;
¡¡¡¡return outcome;
¡¡¡¡}