实现一个时钟,它能处理时间,但不涉及日期。
你应该能够给它加上或减去分钟数。
两个表示同一时间的时钟应该彼此相等。
为了满足说明中关于时钟相等的需求,你的 Clock 类型的值需要能配合==运算符使用。
这意味着,如果你的 New 函数返回的是指针而不是值,那你的时钟很可能就无法配合==使用。
标准库中的 time.Time 类型虽然不一定非要作为你 Clock 类型的基础,但看看那里的构造函数(Date 和 Now)如何返回值而不是指针,或许会有所帮助。 另外也请注意,time.Time 的大多数方法使用的是值接收者,而不是指针接收者。
关于何时该用值接收者、何时该用指针接收者,有一些实用的指南,请参阅 Go Wiki: Receiver Type