对日期加一的代码部分不知道哪里错了

只是incrementDay函数部分有错误,其他的没有问题,代码有点长。

#include<iostream>
using namespace std;
class DateType {
    //自定义的日期类 DateType
    int y, m, d; //数据成员,表示当前日期的年、月、日
public:
    DateType(int y0 = 1, int m0 = 1, int d0 = 1)
    {
        y = y0;
        m = m0;
        d = d0;
    }
    void IncrementDay(); //增加 1 天
    bool Equal(DateType dt2); //判断二日期是否相等
    void PrintDate(); //屏幕输出日期对象的有关数据(年、月、日)
};
bool judge(int y)
{
    if (y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
        return 1;
    else
        return 0;
}
bool DateType:: Equal(DateType dt2)
{
    if (y == dt2.y && m == dt2.m && d == dt2.d)
        return 1;
    else
        return 0;
}
void DateType::IncrementDay()
{
    if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10)
    {
        if (d <= 30)
        {
            d++;
        }
        else
        {
            d = 1;
            m++;
        }
 
    }
    if (m == 12)
    {
        if (d <= 30)
        {
            d++;
        }
        else
        {
            y++;
            m = 1;
            d = 1;
        }
    }
    if (m = 2)
    {
        if (judge(y))
        {
            if (d <= 28)
            {
                d++;
            }
            else
            {
                m++;
                d = 1;
            }
        }
        else
        {
            if(d<=27)
            {
                d++;
            }
            else
            {
                m++;
                d = 1;
            }
        }
    }
}
void DateType::PrintDate()
{
    cout << y << ":" << m << ":" << d<<endl;
}
 
int main()
{
    int y1, m1, d1, y2, m2, d2;
    cin >> y1 >> m1 >> d1 >> y2 >> m2 >> d2;
    DateType dt1(y1, m1, d1);
    DateType dt2(y2, m2, d2);
    cout << y1 << ":" << m1 << ":" << d1<<endl;
    cout << y2 << ":" << m2 << ":" << d2<<endl;
    if (dt1.Equal(dt2))
        cout << "true"<<endl;
    else
        cout << "false"<<endl;
    dt1.IncrementDay();
    dt2.IncrementDay();
    dt1.PrintDate();
    dt2.PrintDate();
    return 0;
}

判断是否为二月少了个等号,另外还少了4,6,9,11月的情况。源码已qq

img