class test
{
public:
test R() const
{
test r;
r.max = 10;
return r;
}
test& R()
{
max = 20;
return *this;
}
void prin()
{
cout << max << endl;
}
private:
int max;
};
test a;
test b;
a = b.R();
a.prin();//此時會打印出 20
test a;
const test b;
a = b.R();
a.prin();//此時會打印出 10;
總結:
只有返回值不同的函數重載 實例化時定義類型