設計乙個日期類date,該類包含資料成員 year(年),month(月),day(日),定義建構函式。
要求: (1)過載日期加上天數的加法運算子+ (例如 給乙個日期加上10天);
(2) 過載日期的自增運算子++ ;(需要滿30進一天)。
#includeusing namespace std;
class date
date(int y,int m,int d):year(y),month(m),day(d){}
void display();
date operator+(int num);
date operator++();//前置++
date operator++(int);//後置++,與前置++區分,系統預設加上int
private:
int year;
int month;
int day;
};void date::display()
} if(day<30) flag=0;
} return date(year,month,day);
}date date::operator++()
} return date(year,month,day);
}date date::operator++(int)
} return date(year,month,day);
}int main()
C 物件導向程式設計 過載
過載 一名多用 運算子的過載 實質是函式的過載,過載函式一般格式如下 函式型別 operator 運算子名稱 形參表 運算子過載規則 c 不允許使用者定義自己定義的新的運算子,只能對已有的運算子進行過載。不能過載的運算子 成員訪問運算子 成員指標訪問運算子 域運算子 sizeof 長度運算子 條件運...
C 物件導向之遞增函式過載
遞增運算子過載 總結 前置 返回引用,可實現鏈式程式設計,為什麼不返回值?還是拷貝建構函式的問題,這裡就不贅述了 後置 為了實現先計算表示式後 的運算規則,故設了乙個區域性變數為了儲存 前的值來實現先計算表示式後 返回該區域性變數的就出現了問題,不能像前置 那樣直接返回引用,因為這是區域性變數,在程...
C 物件導向 C 過載運算子和過載函式
c 允許在同一作用域中的某個函式和運算子指定多個定義,分別稱為函式過載和運算子過載。過載宣告是指乙個與之前已經在該作用域內宣告過的函式或方法具有相同名稱的宣告,但是它們的引數列表和定義 實現 不相同。當您呼叫乙個過載函式或過載運算子時,編譯器通過把您所使用的引數型別與定義中的引數型別進行比較,決定選...