看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) GCC 問題(Question): In function 'const int operator-(const myDate&, const myDate&)': 101-21 [Error] passing 'const myDate' as 'this' argument of 'int myDate::dayOfYear()' discards qualifiers [-fpermissive] 102-21 [Error] passing 'const myDate' as 'this' argument of 'int myDate::dayOfYear()' discards qualifiers [-fpermissive] 程式碼(Code):(請善用置底文網頁, 記得排版) http://ideone.com/BNMlxw 補充說明(Supplement): 我用operator overloding 要算出兩個日期相差幾天 目前的問題就是不知道哪裡出錯一直編譯不過 我有找到如果把friend const int operator -(const myDate& day1 , const myDate& day2) 其中括號裡的兩個const拿掉就會過 但一直想不通為啥。 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.25.118.199 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1430426769.A.301.html
yvb: int dayOfYear() const; bool isLeap(int year) const; 05/01 05:18
yvb: 否則強制轉型(不建議): x = ((myDate)day1). ... y = ... 05/01 05:25