1.複製建構函式
預設建構函式:Widget();
複製建構函式copy constructor
Widget(const Widget& rhs);
複製複製運算子constructor assignment operator
Widget & operator=(const Widget &rhs);
例:
Widget w1;//呼叫預設建構函式
Widget w2(w1);//呼叫賦值建構函式
w1=w2;//呼叫複製複製運算子
pass-by-value 意味著傳送過程中呼叫複製建構函式
例:
bool hasAcceptableQuality(Widget w);
...
Widget aWidget;
if(hasAcceptableQuality(aWidget));