C 類與物件

2021-09-29 21:07:10 字數 2367 閱讀 5200

類的6個預設成員函式

1。建構函式

作用:初始化變數

特徵:1。函式名與類名相同

2。無返回值

3。如果沒有顯式定義,自動生成

4。物件例項化時編譯器自動呼叫

5。可過載

舉例**如下:

#define _crt_secure_no_warnings 1

#include

using namespace std;

class date

void

display()

private:

int _year;

int _month;

int _day;};

intmain()

2。析構函式

作用:完成類的資源清理

特徵:1。函式名是在類名前加~

2。無引數無返回值

3。如果沒有顯示定義,編譯器自動生成

4。物件生命週期結束時,編譯器自動呼叫

例項**如下:

#define _crt_secure_no_warnings 1

typedef

int datatype;

class seqlist

~seqlist()

//析構函式

}private:

int* _pdata;

size_t _size;

size_t _capacity;

};

3。拷貝建構函式

特徵:1。是建構函式的一種過載形式

2。只有乙個引數且必須引用傳參

例項**如下:

#define _crt_secure_no_warnings 1

class date

date

(const date& d)

private:

int _year;

int _month;

int _day;};

intmain()

4。賦值運算子過載

(1)運算子的過載

作用:為了提高c++的可讀性

函式原型:返回值型別 operator運算子(引數列表)

(2)賦值操作符過載

作用:對已存在的物件進行賦值拷貝

特徵:1。引數型別

2。返回值

3。返回 *this

4。檢測是否自己給自己賦值

5。如果沒有顯式定義,則會自動生成,完成物件按位元組序的值拷貝

例項**如下:

class date

date

(const date& d)

date& operator=

(const date& d)

return

*this;

}private:

int _year;

int _month;

int _day;

};

5。const成員

作用:修飾成員函式裡隱含的this指標

特徵:不能對類的任何成員進行更改

例項**如下:

#define _crt_secure_no_warnings 1

#include

using namespace std;

class date

void

display()

const

private:

int _year;

// 年

int _month;

// 月

int _day;

// 日};

void

test()

intmain()

6。取位址操作符過載和const修飾的取位址操作符過載

例項**如下:

#define _crt_secure_no_warnings 1

class date

const date* operator&()

const

private:

int _year;

// 年

int _month;

// 月

int _day;

// 日

};

這兩個操作符使用預設的取位址操作符過載即可。

C 類與物件

程式設計模型 所有計算機均由兩種元素組成 和資料.精確的說,有些程式是圍繞著 什麼正在發生 而編寫,有些則是圍繞 誰正在受影響 而編寫的.抽象封裝 封裝是一種把 和 所操作的資料 在一起,使這兩者不受外界干擾和誤用的機制.繼承 繼承是指乙個物件從另乙個物件中獲得屬性的過程.是物件導向程式設計的三大原...

C 類與物件

c 類與物件 區分物件導向與面向過程 物件導向是指一種程式設計范型,同時也是一種程式開發的方法。它將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性 靈活性和擴充套件性。物件導向 利用物件間的訊息傳遞來驅動程式的執行。優點 真實表現客觀世界,物件間的關係清晰,物件間的訊息處理高效。面...

C 類與物件

類是物件導向的核心機制,是物件導向設計中對具有相同或相似性質的物件的抽象,是對資料和操作進行封裝的載體,進而保證了對資料的安全 高效 合理的訪問 物件是類的例項,是類的具體個體,對應現實世界的實體。類的定義 class 類名 void showclock 習慣上在類的宣告中只定義函式的原型,在類外定...