C 學習之路 1 拷貝建構函式

2021-07-10 10:12:29 字數 994 閱讀 3112

// 呼叫拷貝建構函式的三種情況

#include

using

namespace

std;

class rectangle

;rectangle::rectangle(int len, int wid)

// 呼叫①

rectangle::rectangle(const rectangle &p)

// 呼叫② 物件作函式引數

void fun1(rectangle p)

// 呼叫③ 函式返回值為物件

rectangle fun2()

int main()

執行結果:

using normal constructor

3040

using copy constructo

6080

using copy constructo

6080

using copy constructo

6080

using xigou constructor.

using normal constructor

using xigou constructor.

1030

using xigou constructor.

using xigou constructor.

using xigou constructor.

--------------------------------

process exited after 0.1117 seconds with

return value 0

請按任意鍵繼續. . .

conclusion:

①當類物件作為函式引數,呼叫函式時,在形參中的物件會呼叫拷貝建構函式

②當類物件作為函式型別時,main函式中呼叫該函式的物件不會執行拷貝建構函式

C 建構函式 拷貝建構函式

建構函式 class base private int m var 建構函式無返回值型別,函式名和型別相同。拷貝建構函式傳遞引數為引用。1 class base2 7 拷貝建構函式 8 base base ref m var ref m var 9 11 private 12 intm var 13...

C 學習篇 拷貝建構函式

在學習這一章內容前我們已經學習過了類的建構函式和析構函式的相關知識,對於普通型別的物件來說,他們之間的複製是很簡單的,例如 int a 10 int b a 自己定義的類的物件同樣是物件,誰也不能阻止我們用以下的方式進行複製,例如 include using namespace std class ...

C 學習筆記 拷貝建構函式

拷貝建構函式是一種特殊的建構函式 1 它是建構函式,所以函式名是類名 沒有返回值 2 它是特殊的建構函式 引數形式是固定的 class object 拷貝建構函式的含義 以乙個物件為藍本,來構造另乙個物件。object b object a b 稱作 以b為藍本,建立乙個新的物件a。a是b的乙個拷貝...