C 中類的6個預設成員函式

2021-09-28 18:46:29 字數 1687 閱讀 9801

注意:注意:

注意:注意:

簡單歸納:

函式返回值

引數作用

建構函式

無返回值

有參和無參兩種

初始化物件

析構函式

無返回值

無引數物件生命週期結束時,在物件刪除前做清理工作

拷貝建構函式

無返回值

引用型別的引數

用已存在的物件建立新的對像

運算子過載

不定至少有乙個

方便c++中的操作

還有兩個預設成員函式一般不用重新定義(取位址操作符過載和const修飾的去位址操作符過載)

注意:

#include

#include

using

namespace std;

class

date

date

(int year,

int month,

int day)

~date()

date

(date& ra)

date&

operator

=(date& ra)

date&

operator+(

int day)

date&

operator-(

int day)

date&

operator++(

) date operator++(

int)

//後置++因為要返回沒有加1之前的,所以建立類型別變數(不能是類型別的引用)儲存起來,方便返回,注意和前置++返回值及引數的區別

date&

operator--(

) date operator--(

int)

bool

operator

>

(const date& ra)

const

else

if(_year==ra._year &&_month>ra._month )

else

if(_year == ra._year &&_month == ra._month&&_day > ra._day)

else

}bool

operator==(

const date& ra)

const

else

}bool

operator

>=

(const date& ra)

const

else

}bool

operator

<

(const date& ra)

const

else

}bool

operator

<=

(const date& ra)

const

else

}bool

operator!=(

const date& ra)

const

else

}void

show()

private

:int _year;

int _month;

int _day;};

intmain()

C 中類的6個預設成員函式

1.建構函式 建構函式是乙個特殊的成員函式,名字與類名相同,建立類型別物件時,由編譯器自動呼叫,在物件的生命週期內隻且值呼叫一次,以保證每個資料成員都有乙個合適的初始值。建構函式特性 1 函式名與類名相同。2 沒有返回值。3 有初始化列表 可以不用 4 新物件被建立,由編譯器自動呼叫,且在物件的生命...

C 類中的6個預設成員函式

引言 類的6個預設的成員函式包括 建構函式 析構函式 拷貝建構函式 賦值運算子過載函式 取位址操作符過載 const修飾的取位址操作符過載。這裡預設的意思是如果你不定義,則編譯器會自動生成,而在實際操作中,我們往往自己實現前四個,後兩個讓編譯器自動生成建構函式,顧名思義,為物件分配空間,進行初始化。...

C 類的6個預設成員函式

1.概念 名字與類名相同,建立類型別物件時由編譯器自動呼叫,保證每個資料成員都有乙個合適的初 始值,並且在物件的生命週期內只呼叫一次。2.特性 雖然名字叫構造,但其主任務並不是開闢空間建立物件,而是初始化物件。函式名與類名相同,無返回值,物件例項化時編譯器自動呼叫對應的建構函式,建構函式可以過載,通...