【c++日期加减】日期没结果,请教错哪了


class Date
{
public:
    int Isleapyear();
    void Print();
    Date()                            //不带参数的构造函数
    {
        year = 2007;
        month = 12;
        day = 31;
    }
    Date(int y,int m,int d);
    private:
    int year,month,day;
};
class Newdate:public Date
{
public:
    void show();
    Newdate(int y,int m,int d):Date(y,m,d) 
    {
        int n;
        cout<<"加多少天: "<<endl;
        cin>>n; 
        int a[13];
        if(Isleapyear()){
        int a[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};}
        else{
        int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};}
        
        num=n+d;
        while(a[m]<num)
        {
        num=num-a[m];
        if(m==12)
            {
                y++;
                m=0; 
            }     
            m++;
        }
        newd=num; 
        newy=y;
        newm=m;
}
private:
    int newy,newm,newd,num;
    
};



int Date::Isleapyear()
{
    return(year%4==0 && year%100!=0)||(year%400==0);
}

void Date::Print()
{
    cout<<year<<"/"<<month<<"/"<<day<<endl;
}

Date::Date(int y,int m,int d)
    {
        year=y;
        month=m;
        day=d;
    }


void Newdate:: show()
    {
    cout<<newy<<"/"<<newm<<"/"<<newd<<endl;    
    }
    


void main()
{    int y,m,d; 
    cout<<"请输入年月日: "<<endl;
    cin>>y>>m>>d;
    Date today(y,m,d);
    Newdate new_date(y,m,d);
    today.Print(); 
    new_date.show();

}

img

看错误提示啊