大家帮我看下这段程序错在哪
- C/C++ code
#include <iostream>#define MAX 1024using namespace std;template<typename T> class sequeue;template <typename T>void sequeue<T>::operator = (stack<T> &s);template <typename T> class stack{public: stack(int i=-1):top(i){} virtual void push(T t); virtual T pop(); virtual void peek() { if(empty()) cout<<"空栈"<<endl; else cout<< data[top] <<endl; } virtual void setnull(){top=-1;} virtual bool empty() { if(top>=0) return false; else return true; } void operator =(const stack<T> &a) { top=a.top; for(int i=0;i<=a.top;i++) data[i]=a.data[i]; } void operator =(sequeue<T> &s); protected: T data[MAX]; int top; friend void sequeue<T>::operator = (stack<T> &s);};template <typename T> class sequeue:public stack<T>{public: sequeue():stack(MAX-1),rear(MAX-1){} virtual void push(T t); virtual T pop(); virtual bool empty() { if(rear==top) return true; else return false; } virtual void setnull(){rear=MAX-1;top=MAX-1;} virtual void peek() { if(empty()) cout<<"空队列"<<endl; else cout<<data[top+1]<<endl; } void operator = (stack<T> &s) { rear=s.top; for(int i=0;i<=s.top;i++) data[i]=s.data[i]; s.setnull(); }protected: int rear; friend void stack <T>::operator =(sequeue<T> &s);};template <typename T> void sequeue<T>::push(T t){ if(top==(rear+1)%MAX) cout<<"满队列"<<endl; else { rear=(rear+1)%MAX; data[rear]=t; }}template <typename T>T sequeue<T>::pop(){ if(empty()) { T x; cout<<"空队列"<<endl; return x; } else { top=(top+1)%MAX; return data[top]; }}template <typename T>void stack<T> ::push(T t){ if(top==MAX-1) cout<<"溢出"<<endl; else data[++top]=t;}template <typename T>T stack<T> :: pop(){ if(stack::empty()) { T x; cout<<"空栈"<<endl; return x; } else return data[top--];}template <typename T>void stack<T>::operator =(sequeue<T> &s) //出队列 入栈 更简洁{ int a=s.top,b=s.rear,i; if(a<b) { for(i=0;i<s.rear-s.top;i++) data[i]=s.data[++a]; top=--i; } else if(a>b) { for(i=0;i<MAX-(s.top-s.rear);i++) { if(a==MAX-1) a=-1; data[i]=s.data[++a]; } top=--i; } else top=-1; s.setnull();}[解决办法]
什么错误啊!
[解决办法]
如果编译链接有错,帖出错误行和代码
如果运行不对,单步跟踪
[解决办法]
...
里面有函数未定义
[解决办法]
[解决办法]
好歹写个main创建一个 测试一下
如果编译链接有错,帖出错误行和代码
如果运行不对,单步跟踪