C++语言程序,编程

设计一个表示时间的类Time,包括时、分、秒三个数据成员,构造函数用于初始化的一个时间对象,形参默认的时间为10点整;成员函数SetH()用于修改时间中的小时,成员函数SetM()用于修改时间中的分钟,成员函数SetS()用于修改时间中的秒钟,成员函数Display()用于显示时间。创建一个Tim对象进行测试。

#include <iostream>
#include <iomanip>
#include <cassert>
using namespace std;

class Time
{
private:
    int hour;
    int minute;
    int second;

public:
    Time(int h = 10, int m = 0, int s = 0) : hour(h), minute(m), second(s) {}
    void SetH(int h)
    {
        assert(h >= 0 && h < 24);
        hour = h;
    }
    void SetM(int m)
    {
        assert(m >= 0 && m < 60);
        minute = m;
    }
    void SetS(int s)
    {
        assert(s >= 0 && s < 60);
        second = s;
    }
    void Display()
    {
        cout.clear();
        cout.fill('0');
        cout << setw(2) << hour << ":" << setw(2) << minute << ":" << setw(2) << second << endl;
    }
};

int main()
{
    Time t;
    t.Display();

    Time t2(1, 2, 3);
    t2.Display();

    t.SetH(23);
    t.SetM(59);
    t.SetS(59);
    t.Display();
}