C++怎样重载下标运算符 [ ]
请设计一个表示时间、简单但完整的Time类,它包含3个数据成员:hour, minute, second;要求在Time类中重载“[ ]”运算符,如果t是一个Time类的,则t[1]表示hour成员,t[2]表示munute成员,t[3]表示second成员,其他下标都是无效的;在“[ ]”运算符重载函数中使用assert函数对下标进行有效性检查。
在“[ ]”运算符重载函数中使用assert函数对下标进行有效性检查。
#include <assert.h>
class time { public: int& operator[](int k) { assert( (0<= k) && (k<=100) ); if (k == 1) return hour; else if (k == 2) return minute; else return second; } int hour, minute, second; };