c++ 是一門物件導向的程式語言,理解 c++,首先要理解類(class)和物件(object)這兩個概念。
c++ 中的類(class)可以看做c語言中結構體(struct)的公升級版。結構體是一種構造型別,可以包含若干成員變數,每個成員變數的型別可以不同;可以通過結構體來定義結構體變數,每個變數擁有相同的性質。例如:
#include
//定義結構體 student
struct student
;//顯示結構體的成員變數
void
display
(struct student stu)
intmain()
執行結果:
小明的年齡是 15,成績是 92.500000
c++ 中的類也是一種構造型別,但是進行了一些擴充套件,類的成員不但可以是變數,還可以是函式;通過類定義出來的變數也有特定的稱呼,叫做「物件」。例如:
#include
//通過class關鍵字類定義類
class
student};
intmain()
執行結果與上例相同。
c語言中的 struct 只能包含變數,而 c++ 中的 class 除了可以包含變數,還可以包含函式。display() 是用來處理成員變數的函式,在c語言中,我們將它放在了 struct student 外面,它和成員變數是分離的;而在 c++ 中,我們將它放在了 class student 內部,使它和成員變數聚集在一起,看起來更像乙個整體。
結構體和類都可以看做一種由使用者自己定義的複雜資料型別,在c語言中可以通過結構體名來定義變數,在 c++ 中可以通過類名來定義變數。不同的是,通過結構體定義出來的變數還是叫變數,而通過類定義出來的變數有了新的名稱,叫做物件(object)。
在第二段**中,我們先通過 class 關鍵字定義了乙個類 student,然後又通過 student 類建立了乙個物件 stu1。變數和函式都是類的成員,建立物件後就可以通過點號.來使用它們。
可以將模擬喻成圖紙,物件比喻成零件,圖紙說明了零件的引數(成員變數)及其承擔的任務(成員函式);一張圖紙可以生產出多個具有相同性質的零件,不同圖紙可以生產不同型別的零件。
類只是一張圖紙,起到說明的作用,不占用記憶體空間;物件才是具體的零件,要有地方來存放,才會占用記憶體空間。
在 c++ 中,通過類名就可以建立物件,即將圖紙生產成零件,這個過程叫做類的例項化,因此也稱物件是類的乙個例項(instance)。
C 類和物件的概念
概念 object oriented programming,縮寫 oop 是一種程式開發的方法。物件指的是類的例項,將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性 靈活性和擴充套件性 在c語言中使用struct可以對資料進行抽象封裝,在c 中用class封裝程式和資料,其訪問許...
C 類和物件的基礎概念
類和結構體的區別 盡量將成員成員變數設定為私有許可權 1.類是自定義資料型別,是c語言的結構體的進化 2.物件是類例項化出來的,用資料型別定義乙個變數 3.類內的變數稱為成員變數 成員屬性 類內函式稱為成員函式 成員方法 class m 定義了個類 intmain 封裝是把變數和函式放到類內。然後給...
C 類和物件(概念 this指標)
比如 世界上有很多人,但是 人 這個詞是一開始就存在的嗎。並不是,我們把 人 叫做 人 那麼老外可能就會叫做 person 或者 people 那麼我們就可以說 人 就是一種抽象,就是類 而我們每乙個人就相當於是 人 這個類的乙個個實體。2.class的定義 1 類的內容有哪些?類內成員都有什麼呢?...