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

#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()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)
};
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;
}

手掌心
浏览 589回答 2
2回答

梵蒂冈之花

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

繁花如伊

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)};
打开App,查看更多内容
随时随地看视频慕课网APP