http://www.cnblogs.com/xkfz007/archive/2012/05/11/2496447.html
Complex test1(const Complex& c)
{ return c;}
Complex test2(const Complex c)
{ return c;}
Complex& test5(Complex& c)
{ return c;}
測試代碼:
一、
int main()
{
Complex a;
Complex b=test1(a);
Complex c=test5(a);
}
其中,第二句和第三句,都隻調用一次拷貝構造函數,無臨時對象。語句屬于複制初始化。
二、
int main()
{
Complex a,b,c;
b=test1(a);
c=test5(a);
}
其中,後兩句各調用一次指派操作符重載函數,但第二句中為函數傳回值生成一個臨時對象。語句為指派。