📄 bus.h
字号:
#include<iostream.h>
#include<string.h>
class bus
{
private:
char* name;
char* trackName;
char* upTrack;
char* downTrack;
char* fromTime;
char* toTime;
char* price;
int isExist(char*);
void initialize();
public:
bus(char* n);
~bus();
char* note;
void printInformation();
class Error{};//异常类
};//class bus
void bus::initialize()
{
int i;
trackName=new char[60];
upTrack=new char[600];
downTrack=new char[600];
fromTime=new char[60];
toTime=new char[60];
price=new char[60];
char* locator=new char[30];
strcpy(locator,"source\\bus\\");
if(*name=='k') strcat(locator,(name+1));
else strcat(locator,name);
strcat(locator,".txt");
ifstream in_file;
in_file.open(locator, ios::in);
char* mystring[6];
mystring[0]=new char[60];
mystring[1]=new char[600];
mystring[2]=new char[600];
mystring[3]=new char[60];
mystring[4]=new char[60];
mystring[5]=new char[60];
for(i=0;i<=5&&in_file;i++)
{
in_file.getline(mystring[i],1000);
}
in_file.close();
strcpy(trackName,mystring[0]);
strcpy(upTrack,mystring[1]);
strcpy(downTrack,mystring[2]);
strcpy(fromTime,mystring[3]);
strcpy(toTime,mystring[4]);
strcpy(price,mystring[5]);
for(i=0;i<=5;i++)
{
delete [] mystring[i];
}
delete []locator;
}//bus::initialize
bus::bus(char* n)
{
note=new char[100];
strcpy(note,"");
name=new char[10];
strcpy(name,n);
if(isExist(name))
{
initialize();
strcpy(note," find it !");
}
if(*name=='k')
{
if(isExist((name+1)))
{
initialize();
strcpy(note,"您要查找的线路:");
strcat(note,name);
strcat(note,"不存在或者本系统没有记录这条线路;下面这条线路供参考:");
}
}
else
{
char* temp=new char[11];
strcpy(temp,"k");
strcat(temp,name);
if(isExist(temp))
{
initialize();
strcpy(note,"您要查找的线路:");
strcat(note,name);
strcat(note,"不存在或者本系统没有记录这条线路;下面这条线路供参考:");
}
delete []temp;
}
if(!*note)
{
throw Error();
}
}//bus
bus::~bus()
{
delete []note;
delete []name;
delete []trackName;
delete []upTrack;
delete []downTrack;
delete []fromTime;
delete []toTime;
delete []price;
}//~bus
void bus::printInformation()
{
cout<<trackName<<endl<<endl;
cout<<upTrack<<endl<<downTrack<<endl;
cout<<endl<<fromTime<<endl<<toTime<<endl;
cout<<endl<<price<<endl;
}//printInformation
int bus::isExist(char* busName)
{
ifstream in_file;
in_file.open("source\\busname.txt", ios::in);
char* instring=new char[10];
while(in_file)
{
in_file>>instring;
if(!strcmp(busName,instring)) {in_file.close();return 1;}
}
in_file.close();
return 0;
}//isExist
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -