注册 登录
编程论坛 C++教室

关于类的继承和派生

马小柯 发布于 2013-04-17 21:19, 615 次点击
关于类的继承和派生
定义一个基类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;
}
3 回复
#2
邓士林2013-04-17 22:49
写的不错哦!继续努力
#3
Pirelo2013-04-18 14:29
这是展示贴?搞不清楚LZ的意图
#4
马小柯2013-04-18 14:40
回复 2楼 邓士林
谢谢
1