如何在一个类中增量独立的变量,而不是对象本身?

问题描述 投票:-3回答:1

假设有一个类Time,它包含三个数据类型Hour、Minute和Second。使用运算符重载,我将如何分别递增这三个变量?

这里有一个反例,展示了使用++运算符增量如何将所有变量全部增量。我想分别递增它们或者只递增一个。但我不知道如何通过对象访问它们

    class Time
{
    private:
        int Hour, Minute, Second, option;
    public:
        Time() : Hour(13), Minute(59), Second(59)
        {
        }
        void operator ++ ()
        {
            ++Second;
            ++Minute;
            ++Hour;
        }
        void Display ()
        {
            cout << Hour << ":" << Minute << ":" << Second << endl;
        }
};

int main ()
{
    Time t;
    ++t;
    t.Display();
    return 0;
}
c++ class object variables increment
1个回答
0
投票

创建一个带有一些公共属性的类

class Time {
public:
    int hour = 0;
    int minute = 0;
    int second = 0;
};

然后创建一个Time的实例,并更新属性。

Time time = Time();

// assign whatever value you like
time.hour = 2;
time.minute = 32;
time.second = 324;

// or use the increment operator
time.hour++

// time.hour now contains the value 3 
© www.soinside.com 2019 - 2024. All rights reserved.