为了账号安全,请及时绑定邮箱和手机立即绑定

编译c++出错:parse error before 'typedef',为什么?

编译c++出错:parse error before 'typedef',为什么?

手掌心 2022-05-12 16:11:45
#include<stdlib.h>#include"LinearList.h"const int defaultsize=100;template<class T>class Seqlist:public LinearList<T>{private:T *data;int maxsize;int last;void reSize(int newsize);public:Seqlist(int ms=defaultsize);~Seqlist(){delete[] data;}T* getData(int i){if(i>0&&i<last+1){return data[i-1];}void setData(int i,T& x){if(i>0&&i<last+1)data[i-1]=x;}//parse error before 'typedef'int Length(){renturn last+1;}int Search(T& x)int Size(){return maxsize;}void input()constvoid output()bool IsEmpty(){retnrn (last==-1)?true:flase;}int Locate(int i)bool Insert(int i,T& x)int Delete(int i)bool Remove(int i,T&x)Seqlist<T> operator=(Seqlist<T>&L)};template<class T>Seqlist<T>::Seqlist(int ms){if (ms>0){maxsize=ms;last=-1;data=new T[maxsize];if(data==NULL){cerr<<"存储分配错误"<<endl;exit(1);}}}template<class T>Seqlist<T>::~Seqlist(){delete data;}template<class T>Seqlist<T>::Search(T& x){for(int i=0;i<maxsize;i++){if (data[i]==x)return i+1;return 0;}}template<class T>Seqlist<T>::input()const{cout<<"开始建立顺序表,请输入表中元素个数:"<<endl;while(1){cin>>last;if(last==maxsize) break;cout<<"元素个数不能超过"<<maxsize-1<<endl;}for(int i=0;i<last;i++){cin>>data[i];cout<<i+1<<endl;}}template<class T>Seqlist<T>::output(){cout<<"输出顺序表中的元素:"<<endl;for(int n=0;n<last;n++){cout<<i+1<<":"<<data[i]<<endl;}}template<class T>Seqlist<T>::Locate(int i){cout<<"输出元素a的位置:"<<endl;for(int m=0;m<last;m++){if (data[i]=='a')return (i+1);else return 0;}};template<class T>Seqlist<T>::Insert(int i,T& x){if (last==maxsize-1) return false;if(i<0||i>last)cout<<"不存在的元素位置:"<<endl;return false;for(int j=last;j>=i;j--)data[j+1]=data[j];data[i]=x;last++;return true;}template<class T>Seqlist<T>::Delete(int i){if(i<0||i>last)return false;// int x=data[i];for(int j=i;j+1<last;j++)data[j]=data[j+1];last--;return true;}
查看完整描述

2 回答

?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

你的代码没有给全吧,
编译都过不去啊。
根本编译不到"parse error before 'typedef'"这一步,
编译时直接#include"LinearList.h"找不到
是不是有头文件没给出

查看完整回答
反对 回复 2022-05-16
?
繁花如伊

TA贡献2012条经验 获得超12个赞

void setData(int i,T& x){
if(i>0&&i<last+1)
data[i-1]=x;}//parse error before 'typedef'
int Length(){renturn last+1;}
int Search(T& x)
int Size(){return maxsize;}
void input()const
void output()
bool IsEmpty(){retnrn (last==-1)?true:flase;}
int Locate(int i)
bool Insert(int i,T& x)
int Delete(int i)
bool Remove(int i,T&x)
Seqlist<T> operator=(Seqlist<T>&L)
};



查看完整回答
反对 回复 2022-05-16
  • 2 回答
  • 0 关注
  • 588 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信