c++中結構體和類的異同

結構體是對數據(變量)的封裝。類是對數據(變量)和函數(方法)的封裝。
在C語言中,結構體中使用函數則必須使用指針,在C++中結構體可以有函數,但不推薦這樣使用(一般都不用)。
類是具有相同屬性和行爲的對象的抽象,使用類時,需先定義一個類變量,定義類的變量就是對象。定義對象時,會自動調用構造函數(所以構造函數的使用是從定義一個類時開始的)。

結構體內的變量默認爲public ,而類中變量默認爲private類型。 

Protected只有自己和子類可以使用,private只有自己可以使用。

類中使用指針時,需要用new分配它自己的空間:
class A{
private:int * m_pAge;
public:A(){
m_pAge=new int(100);
}
}
由於new或者malloc後需要手動刪除堆空間,由此引入析構函數
發佈了77 篇原創文章 · 獲贊 110 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章