我写了个栈摸拟请高手看看,我存在的问题比如"看了你的代码,我感觉你在编程中有以下通病"

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

//帮我看看我的编程中隐藏的问题,当然不是就此程序论此程序,就是通过此代码可以看出我的

//常出问题的地方编程误区, 我的QQ:81231578 马丁......

// 本文来自铁道P246,;

//设计一个栈结构体的类,栈内存放的数据是三个字母的字符串(AAA,BCC,ABZ,KIS..)

//数据成员包括栈本身(stack),栈大小(size),及目前顶端位(top);

//成员函数则可以处埋栈内的数据引用,包括加入栈add(),从堆栈中删除delete(),

//检查堆栈是否已满IsFull(),检查堆栈是否已空等IsEmpty(),当然还有构造函数。

//测试时,可以写一段主程序main(),定义一个栈象,并对此对像做加入堆栈,

//删除栈的操作,提示:加入堆栈时,要考栈是否已满,且必须维护值保特在顶端的位置;

//删除栈时,则要考虑栈是否已空,并维护值在顶端位置

#include

#include

#include

#define FALSE -1

#define TURE 1

class stack

{

public:

stack(int sizeofstack);//构造函数

~stack();//析构函数

int ISFULL(class stack );

int ISEMPTY(class stack); //判断栈中是否为空

void COUTSTACKPT(class stack stacksample);//显示栈的内容

void ADD(char * str); //入栈操作

void POP(class stack stacksample); //弹栈操作

private:

char * stackpoint[20]; //指针数组

int size;

int top;

};

void stack::POP(class stack stacksample) //弹栈操作

{

if(ISEMPTY(stacksample)==FALSE)

{

top--;

}

}

void stack::ADD(char * str) //入栈操作

{

top++;

strcpy(stackpoint[top],str);

}

int stack::ISEMPTY(class stack stacksample)//判断栈是否为空

{

if(top=0) {return FALSE;}

else {cout stacksize;

stack t1(stacksize); //构造函数申请栈空间

t1.COUTSTACKPT(t1); //先判断后显示栈内容

for(i=0;i stacktemp;

t1.ADD(stacktemp);

}

cout

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航