c 類的建立與使用

2022-05-09 07:27:07 字數 1872 閱讀 3929

之前一直對c++的類的建立與使用不太熟悉,有些概念還是有點模糊,藉著這次休息的機會整理一下對應是知識點。如有不正確的地方還希望各位讀者批評指正。

繼承修飾符,就像是一種篩子,將基類的成員篩到派生類。public、protected、private,就是篩子的眼。

通過public繼承,所有基類成員(除了private),public、protected都到了派生類裡面,public篩眼比較大,不會改變訪問許可權。

通過protected繼承,所有基類成員(除了private),public、protected都到了派生類裡面,protected篩眼大小適中,所有過來的成員都變成了protected。

通過private繼承,所有基類成員(除了private),public、protected都到了派生類裡面,private篩眼最小,所有過來的成員都變成了private。

類是乙個模板,可用類生成一系列可用的例項。例如 int b就是生成了乙個符合int的資料b,類也是一樣,使用類名就可以直接生成乙個例項,

該例項中包含類中所有的資料型別和對這些資料的操作方法。

首先,建立乙個類

class

obj

該類中包含三個部分,私有部分(private)、保護部分(protected)、公有部分(public)(當然也可以都沒有成為乙個空類),其中private和protected部分中的資料和內容不可以在類外通過物件(例項)直接呼叫。

#includeusing

namespace

std;

#define max 10

class obj //

建立類;

void

main()

如上使用ob的private成員編譯無法通過,報錯test.cpp(17): error c2248: 「obj::num」: 無法訪問 private 成員(在「obj」類中宣告)。一般使用public方法來操作private資料,以保證資料的安全性,這同樣體現了c++的封裝性。

#includeusing

namespace

std;

#define max 10

class

obj

char *get_name()

intget_num()

float

get_price()

float

get_total_price()

};

乙個類結束後記得加上分號,血淚教訓,怎麼都找不到錯誤原因)成員函式可以在類內部實現(如上所示),也可以在類外部實現,若在外部實現其內部只需將函式宣告後加上分號.

其外部實現使用如下格式

返回值型別 類名 ::函式名(引數)

class

obj;

void obj::get_obj(char name, int num, float

price)

::叫做作用域解析符,當類的方法在類外部實現時,用來限定該方法是哪乙個類的, 當乙個類中有資料和方法但是沒說明其屬於哪部分(protected、private、protected),則預設其為私有部分.

#includeusing

namespace

std;

#define max 10

class

obj

char *get_name()

intget_num()

float

get_price()

float

get_total_price()

};void

main()

MyBatisUtils工具類建立與使用

問題引出 在使用mybatis的時候,我們可以把他的建立以及流程都封裝起來,這樣在使用的時候我們很方便去使用,需要每次都建立了。流程 第一步 提取碼 7njt 在sqlmapconfig.xml中映入db.properties 然後環境中就可以直接配置了 這是db.properties配置資訊 環境...

C 物件的建立與使用

1 物件是類的例項 instance 正如在前幾章稱變數是資料型別的例項一樣。宣告一種資料型別只是告訴編譯系統該資料型別的結構形式,並沒有預定記憶體,或者講並沒有建立了可用來存放資料的變數。類是一種資料型別,定義時系統並不為類分配儲存空間,類只是乙個樣板,以此樣板可以在記憶體中開闢出乙個個同樣結構的...

c 鍊錶類建立使用

我們知道,陣列式計算機根據事先定義好的陣列型別與長度自動為其分配一連續的儲存單元,相同陣列的位置和距離都是固定的,也就是說,任何乙個陣列元素的位址都可乙個簡單的公式計算出來,因此這種結構可以有效的對陣列元素進行隨機訪問。但若對陣列元素進行插入和刪除操作,則會引起大量資料的移動,從而使簡單的資料處理變...