c 類 建構函式 複製建構函式

2022-09-06 11:00:24 字數 1042 閱讀 4514

複製建構函式是一種特殊的建構函式,它的作用是用乙個已經存在的物件去初始化另乙個物件。

一般情況下不需要自行定義複製建構函式,系統預設提供乙個逐個複製成員值的複製建構函式。

何時要使用呢?

1.將新物件初始化為乙個同類物件

2.按值將物件傳遞給函式

3.函式按值返回物件

4.編譯器生成臨時物件

簡單的樣例如下:

children.h

1

#pragma once

2 #include

3using std::string;4

class

children

5;

children.cpp

1 #include "

stdafx.h

"2 #include "

children.h

"3 #include4 #include

5using

namespace

std;

67 children::children(const

string &str1, const

string &str2, unsigned int

m):name(str1),hobby(str2),age(m)8{}

910 children::~children()

1113

14void children::show() const

15

1 #include "

stdafx.h

"2 #include "

children.h

"3 #include4 #include

5using

namespace

std;

6int

main()

7

結果展示:

C 建構函式詳解(複製建構函式)

該類物件被建立時,編譯系統物件分配記憶體空間,並自動呼叫該建構函式,由建構函式完成成員的初始化工作,故 建構函式的作用 初始化物件的資料成員。1 class complex 2 18 19 一般建構函式 也稱過載建構函式 20 一般建構函式可以有各種引數形式,乙個類可以有多個一般建構函式,前提是引數...

C 賦值建構函式 複製建構函式

編譯器提供乙個不接受任何引數,也不執行任何操作的建構函式,稱之為預設建構函式 這是因為創造物件的時候總會呼叫預設建構函式 klunk klunk 定義 klunk lunk 宣告 使用預設建構函式 如果定義了建構函式,c 不會定義預設建構函式,如果希望建立物件時不顯示地對他進行初始化,則必須顯示的定...

C 建構函式詳解(複製建構函式)

該類物件被建立時,編譯系統物件分配記憶體空間,並自動呼叫該建構函式,由建構函式完成成員的初始化工作,故 建構函式的作用 初始化物件的資料成員。class complex 一般建構函式 也稱過載建構函式 一般建構函式可以有各種引數形式,乙個類可以有多個一般建構函式,前提是引數的個數或者型別不同 基於c...