2 類和物件

2021-10-10 20:06:08 字數 1588 閱讀 8658

類是一種資料型別,設計時系統不為類分配儲存空間,所以不能去訪問類裡面的資料成員,也不能去初始化類裡

面的資料成員。只能訪問這個類所產生的物件的資料成員(前提是共有)。

eg:

類相當於圖紙是描述和規劃的藍圖,而物件就是圖紙例項化後的實體物件(樓房)。

計算機不給類分配記憶體,只給物件分配記憶體。

建立物件有兩種常用方法:1.直接定義

2.動態建立

類裡面有成員變數(屬性)和成員函式,一般都把屬性設為私有,成員函式設為公有。

成員函式:如果在類裡面宣告了函式,類外定義時必須要把類名加上;也可以直接在類裡面定義函式,那樣就不用加了。

在函式宣告時,給出返回型別、函式名、形參型別就行;宣告時也可以給預設值,

如果函式有宣告,定義點和宣告若分離,預設值必須在宣告中給,不要在定義中給,如果定義點和宣告在一塊,則可以

在定義點給預設值。

eg: class cgoods

};void cgoods::registergoods(char name,int amount,float price)//第乙個成員函式的定義

c++三大特性:封裝、繼承、多型

訪問限定符:

1.public:  成員的訪問可在任意位置

2.protected: 子類和本類類中可訪問成員

3.private: 本類類中可訪問成員

從設定點起,到類結束或者下乙個訪問限定符為止為限定範圍。類預設的訪問限定符是private。

訪問說明符private(私有的)和protected(保護的)體現了類具有封裝性。(屬性和行為實現保護起來)

eg:

#include

using namespace std;

class cgoods};

void cgoods:

:registergoods

(char name,

int amount,

float price)

void cgoods:

:counttotal

(void

)void cgoods:

:getname

(char name)

int cgoods:

:getamount()

intmain()

為了封裝、為了分模組,為了用介面(成員函式)把作者和使用者隔離開來,為了讓大家只專心自己那一塊

就好,不用去管自己不該管的。

把可以讓別人訪問和修改的,以介面的形式公開,介面的好處在於,別人依賴你的介面,而不是依賴你具

體的實現,那麼你修改了這個介面的實現,別人那邊不需要修改。

如果將類中的屬性定義為public型別,當屬性名稱發生改變的時候,所有直接呼叫該屬性的**都需要進

行修改。而將其定義為private型別,則別處訪問只能通過該屬性的訪問介面進行訪問,只要介面不變其他**

就不需要變化,保證了對該型別中的屬性的修改只對該類的**產生影響而不影響其他類。

2 類和物件

類即類別 種類,是物件導向設計最重要的概念,從一小節我們得知物件是特徵與技能的結合體,而類則是一系列物件相似的特徵與技能的結合體。那麼問題來了,先有的乙個個具體存在的物件 比如乙個具體存在的人 還是先有的人類這個概念,這個問題需要分兩種情況去看 世界上肯定是先出現各種各樣的實際存在的物體,然後隨著人...

類和物件2

一,建構函式 特性 函式名與類名相同。無返回值。物件例項化時編譯器自動呼叫對應的建構函式。建構函式可以過載。class date date void init int year,int month,int day void init date this,int year,int month,int ...

類和物件2

物件的定義 物件等同於資料加操作 物件 資料 操作 屬性 filed 方法 method 類 類是產生物件的模板 圖紙 學會定義類要解決下面兩個問題 1.如何使用定義好的類,例項化出物件 2.學會使用物件 通過引用 1.操作物件中的屬性 2.呼叫物件關聯的方法 一.如何定義類 public clas...