C#中操作符的重载(Time类)

今天在写一个计时器的Time类,其中想写一些比较简单的方法,所以用到了C#中的操作符的重载,以前会写的居然只有C++的操作符重载,原来自己没遇到过,居然却不会写C# 的操作符重载(虽然C# 的操作符重载要简单得多,但是真正写出来了,才是硬道理啊!)

下面附上我写的Time类,里面有个操作符“++”的重载,“++”的重载会在后面的应用中简单很多呢。。

    class Time
    {
        private int hours;
        private int minutes;
        private int seconds;

        public Time()
        {
            this.hours = 0;
            this.minutes = 0;
            this.seconds = 0;
        }

        public Time(int hours, int minutes, int seconds)
        {
            this.hours = hours;
            this.minutes = minutes;
            this.seconds = seconds;
        }

        public void SetHours(int hours)
        {
            this.hours = hours;
        }
        public void SetMinutes(int minutes)
        {
            this.minutes = minutes;
        }
        public void SetSeconds(int seconds)
        {
            this.seconds = seconds;
        }

        public int GetHours()
        {
            return this.hours;
        }
        public int GetMinutes()
        {
            return this.minutes;
        }
        public int GetSeconds()
        {
            return this.seconds;
        }

        public static Time operator ++(Time time)  //++操作符的重载。。以前居然没写过。。
    {
        time.seconds++;
        if (time.seconds >= 60)
        {
            time.minutes++;
            time.seconds = 0;
            if (time.minutes >= 60)
            {
                time.hours++;
                time.minutes = 0;
                if (time.hours >= 24)
                {
                    time.hours = 0;
                    time.seconds = 0;
                    time.minutes = 0;
                }
            }
        }
        return new Time(time.hours, time.minutes, time.seconds);
    }

    }

Time类还有很多的功能没写,先上着用,有机会完善,而且这个类也太简单了。。 尴尬



转载于:https://www.cnblogs.com/NewWork/archive/2013/03/20/3260584.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值