C 筆記 建構函式

2021-06-20 21:33:34 字數 1198 閱讀 9052

建構函式是特殊的成員函式,只要建立類型別的新物件

,都要執行建構函式。

一般的計算階段

: 建構函式體內的所以語句構成

成員的初始化次序

與建構函式內賦值操作區別

類通常應定義乙個預設建構函式

使用預設建構函式

類成員的顯式初始化

#include #include using namespace std;

class book

book(const book &book):

isbn(book.isbn),price(book.price)

book& operator=(const book &book)

private:

string isbn;

double price;

};class mytest

mytest():

books("0-990-09",2.2),num(0.0)

/*mytest(const book &book)

*/private:

book books;

double num;

};int main()

建構函式初始化列表呼叫的是類

相匹配的建構函式:

create book===

book::init

create test===

book::copy

mytest::init:

create test1===

book::init

mytest::()

建構函式內賦值操作首先呼叫類預設建構函式初始化物件,然後在呼叫賦值建構函式進行賦值操作:

修改建構函式為

mytest(const book &book)

create book===

book::init

create test===

book::init

mytest::init

book::=

create test1===

book::init

mytest::()

C 筆記之建構函式

以下部分截圖取自慕課網相關課程 建構函式在物件例項化是被自動呼叫 建構函式與類同名 建構函式沒有返回值 建構函式可以有多個過載形式 例項化物件時僅用到乙個建構函式 建構函式的引數可以有預設值,如果建構函式也使用類外定義,那麼在函式實現部分不用寫預設值,這一點和普通類外定義函式的預設值是一樣的 當使用...

C 學習筆記 建構函式

在建立某個類的物件時,由於對該物件的狀態 資料 不很明確,因此需要對其進行初始化。例如,我們要在長方形中建立乙個物件,或者說新建乙個長方形,那麼我們首先要確定它的長和寬,假如我們無法確定它的長和寬,那麼我們是無法構造出乙個長方形來的。例如,我們要構造乙個長方形,由於建構函式要在建立新物件時使用,因此...

C 學習筆記之建構函式(一)預設建構函式

定義 在未提供顯式的初始值時,用來建立物件的建構函式。舉例 class testclass private int m a int m b public testclass 預設建構函式1 testclass int a,int b 建構函式 testclass int a 10,int b 5 預...