2

課題の 1 つで古い日付クラスを更新する必要があり、やり直さなければならないこの機能に行き詰まっています。

操作が可能な場合、関数は Bool を返す必要があります。

私がやりたいことは、ColeDateTimeSpan で日を ColeDateTime に減算することです

私はこのようなことができることを知っています:

int i = 2;    
COleDateTime time_DT = COleDateTime(2014, 2, 20, 0, 0, 0);
COleDateTimeSpan time_SP = COleDateTimeSpan(i);
time_DT = time_DT - time_SP;
cout << time_DT.GetDay() << endl;

この場合、私の関数は true を返します。

long i = 999999999999;    
COleDateTime time_DT = COleDateTime(2014, 2, 20, 0, 0, 0);
COleDateTimeSpan time_SP = COleDateTimeSpan(i);
time_DT = time_DT - time_SP;
cout << time_DT.GetDay() << endl;

この場合、私の関数はクラッシュする代わりに false を返します

これは私がこれまでに持っているものです:

bool Date::addDays(long days)
{
    bool bRet = true;
    COleDateTimeSpan ts(m_time); //m_time being my COleDateTime
    COleDateTimeSpan tl(days);

    if (tl > ts)
    {
        bRet = false;
        return bRet;
    }
    else
    {
        return bRet;
    }   
}

ありがとう!

編集:減算を意味しました....

4

1 に答える 1