C 複製建構函式

2021-09-19 17:27:50 字數 686 閱讀 7503

誰知道

#include #include using namespace std;

class person ;

// 如果兩種方式同時存在,會呼叫沒有const的版本

// 2. 推薦,存在唯一的person &

person(person & person) ;

// 3. 不推薦,這個依然是複製建構函式,詭異。與第二種方法存在二義性

// person(person & person, int i = 0) ;

// 無參建構函式

person()

~person()

};int main()

// 主動呼叫方式有兩種,推薦第一種

person p2(p1); // 推薦,呼叫複製建構函式

person p3 = p2; // 不推薦,還是呼叫複製建構函式

// 函式,需要乙個person型別的引數,不能是指標或引用

void print(person person)

int main()

有的地方說,下面這種方式會呼叫複製建構函式。在我的機器上沒有出現。

person getperson() 

int main()

C 複製建構函式

c 複製建構函式,一般在一下幾種情況中出現 1 物件以值傳遞的方式傳入函式時 2 物件以值傳遞的的方式從函式返回 3 乙個物件通過另乙個物件初始化 4 陣列 根據陣列中的初始化列表初始化陣列的時候。5 容器 初始化順序容器中的元素 有3種情況必須使用複製建構函式 a 如果有資料成員是指標 b 要在建...

C 複製建構函式

1.概念 只有單個形參,而且該形參是對本類型別物件的引用 常用const修飾 2.首先看乙個小例子 h中 class test private int a float b cpp中 int main test test1 5,5.5 test test2 1,1.1 coutcouttest3使用了...

複製建構函式(C )

複製建構函式定義 複製建構函式是一種特殊的建構函式,其形參為本類的物件引用。作用是用乙個已存在的物件去初始化同型別的新物件。class類名 類名 類 const 類名 物件名 複製建構函式的實現 複製建構函式被呼叫的三種情況 定義乙個物件時,以本類另 個物件作為初始值,發生複製構造 如果函式的形參是...