关于类的继承和派生
关于类的继承和派生定义一个基类MyArray,基类中可以存放一组整数,完善这个类并上机测试。
class MyArray
定义一个类SortArray继承自MyArray,在该类中定义函数实现排序功能。
#include"iostream"
using namespace std;
class MyArray
{
public:
MyArray(int leng);
~MyArray(){}
void Input();
void Display();
protected:
int *alist;
int length;
};
class SortArray:public MyArray
{
public:
~SortArray(){}
SortArray(int leng):MyArray(leng){}
void sort();
};
int i,j;
int flag=0;
MyArray::MyArray(int leng)
{
length=leng;
if(length>0)
{
alist=new int[length];
for(i=0;i<length;i++)
{
alist[i]=0;
}
}
else
{
alist=NULL;
}
}
void MyArray::Input()
{
cout<<"请输入数组:";
for(i=0;i<length;i++)
{
cin>>alist[i];
}
}
void MyArray::Display()
{
if(flag==0)
{
cout<<"该数组为:";
flag=1;
}
else
cout<<"排完序后的数组为:";
for(i=0;i<length;i++)
{
cout<<alist[i]<<"\t";
}
cout<<endl;
}
void SortArray::sort()
{
int k,temp;
for(i=0;i<length;i++)
{
k=i;
for(j=k+1;j<length;j++)
if(alist[j]>alist[k])
k=j;
temp=alist[i];
alist[i]=alist[k];
alist[k]=temp;
}
}
int main()
{
SortArray s(5);
s.Input();
s.Display();
s.sort();
s.Display();
return 0;
}