[問題] 函數回傳const reference to object
測試環境: Dev C
各位好~小弟我最近在書上看到一個簡單例子
類似儲存日期功能
其中有一個operator overloading的函數(operator+=)
回傳了物件的 const reference (問題處有用顏色標示)
不太懂那樣的目的為何
我將程式重新精簡過後如下
===========================Date.h=======================================
#include <iostream>
using std::ostream;
class Date
{
friend ostream &operator<<( ostream &,const Date &);
public:
Date( int d=1);
Date &operator++();
const Date &operator+=(int);
private:
int day;
void inc();
};
=========================================================================
===========================Date.cpp======================================
#include <iostream>
#include "Date.h"
Date::Date(int d)
{
day=d;
}
Date &Date::operator++()
{
inc();
return *this;
}
const Date &Date::operator+=(int add)////我想問的地方
{
for (int i=0;i<add;i++)
inc();
return *this;
}
void Date::inc()
{
day++;
}
ostream &operator<<( ostream &output,const Date &d)
{
output<<d.day;
return output;
}
==========================================================================
謝謝!!!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.230.228.195
※ 編輯: enjoylife66 來自: 61.230.228.195 (08/14 14:11)
※ 編輯: enjoylife66 來自: 61.230.228.195 (08/14 14:13)
推
08/14 14:17, , 1F
08/14 14:17, 1F
→
08/14 14:18, , 2F
08/14 14:18, 2F
→
08/14 14:18, , 3F
08/14 14:18, 3F
→
08/14 14:19, , 4F
08/14 14:19, 4F
→
08/14 14:22, , 5F
08/14 14:22, 5F
→
08/14 14:25, , 6F
08/14 14:25, 6F
→
08/14 14:26, , 7F
08/14 14:26, 7F
推
08/14 14:30, , 8F
08/14 14:30, 8F
→
08/14 14:31, , 9F
08/14 14:31, 9F
→
08/14 14:31, , 10F
08/14 14:31, 10F
→
08/14 14:31, , 11F
08/14 14:31, 11F
→
08/14 14:42, , 12F
08/14 14:42, 12F
→
08/14 14:43, , 13F
08/14 14:43, 13F
→
08/14 14:44, , 14F
08/14 14:44, 14F
→
08/14 14:46, , 15F
08/14 14:46, 15F
→
08/14 14:47, , 16F
08/14 14:47, 16F
→
08/14 14:58, , 17F
08/14 14:58, 17F
→
08/14 14:59, , 18F
08/14 14:59, 18F
→
08/14 16:26, , 19F
08/14 16:26, 19F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章