C 的基礎知識(三) 類的使用

2021-08-08 03:39:43 字數 1818 閱讀 2960

類的基本思想是資料抽象和封裝 。

在c++中,類和結構體的區別就是,結構體預設訪問許可權是public,而類是private。

類是屬於使用者自定義的資料型別,通常來說, 乙個類的定義包含兩部分的內容, 一是該類的屬性, 另一部分是它所擁有的方法。c++中使用關鍵字 class 來定義類, 定義類的一些屬性和方法宣告:

class 類名

;(請注意這個分號不能省略!)

類的資料成員中不能使用 auto、extern和register等進行修飾, 也不能在定義時進行初始化。

類的實現有兩種方式, 一種是在類定義時完成對成員函式的定義, 另一種是在類定義的外部進行完成。

與類的定義相比, 在類內實現成員函式不再是在類內進行宣告, 而是直接將函式進行定義, 在類中定義成員函式時, 編譯器缺省會爭取將其定義為 inline 型函式。

#include 

using

namespace

std;

class point

void printpoint() //實現printpoint函式

private:

int xpos;

int ypos;

};int main()

輸出結果:

x = 10

y = 20

process returned 0 (0x0) execution time : 0.406 s

press any key to continue.

在類外定義成員函式通過在類內進行宣告, 然後在類外通過作用域操作符 :: 進行實現, 形式如下:
返回型別 類名::成員函式名(引數列表)

#include 

using

namespace

std;

class point

;void point::setpoint(int x, int y) //通過作用域操作符 '::' 實現setpoint函式

void point::printpoint() //實現printpoint函式

int main()

以setpoint成員函式來說, 在類內宣告的形式為void setpoint(int x, int y); 那麼在類外對其定義時函式頭就應該是void point::setpoint(int x, int y)這種形式, 其返回型別、成員函式名、引數列表都要與類內宣告的形式一致。

將乙個類定義並實現後, 就可以用該類來建立物件了, 建立的過程如同 int、char 等基本資料型別宣告乙個變數一樣簡單, 例如我們有乙個point類, 要建立乙個point的物件只需要: point 物件名;

一般將類的實現放在.h標頭檔案中。

#include 

#include "point.h"

using

namespace

std;

int main()

通過 物件名.公有函式名(引數列表); 的形式就可以呼叫該類物件所具有的方法, 通過 物件名.公有資料成員; 的形式可以訪問物件中的資料成員。

如果物件的成員函式中有使用new或者malloc申請的動態記憶體程式不會對其進行釋放, 需要我們手動進行清理, 否則會造成記憶體洩露。

C 知識文件三 類的定義和使用

類的定義和使用 客觀世界中的一切事物都可以視為物件。當然這些事物既有具體的物理實體 如 電視,電腦,洗衣機等 也可以是邏輯實體 如 部門 氣候等 不管是哪一種物件他們都有兩方面的特徵 靜態特徵和動態特徵。所謂物件的靜態特徵就是能描述物件的一些屬性。如乙個部門的人數 經理名字等。所謂動態特徵就是物件表...

C 類的基礎知識

類是物件導向程式設計的核心,是通過抽象資料型別方法實現的一種使用者自定義資料型別,它同時包含了資料和對資料進行操作的函式。利用類可以實現資料的封裝和隱藏。類是對某一類物件的抽象,而物件是某一種類的例項。類的定義 類的定義可以分為兩部分 說明部分和實現部分。說明部分說明類中包含的資料成員和成員函式,實...

C 類的基礎知識

類通常包括兩部分 類的內部實現和類的使用方式。當我們建立乙個類時,我們需要考慮去怎麼實現,使用的時候不需要考慮細節,不用想怎麼去實現。首先我們給出乙個簡單的類 class test int getval private int v int test getval 類裡面包含了量種不同的東語法,乙個是...