struct和class的相同點與不同點

2022-09-03 13:27:10 字數 492 閱讀 2266

struct是c語言中常用來定義結構體時使用的 

class是c++中用來定義類時所使用的

相同struct(結構體)和class(類)內均可有不同個數、不同型別的資料 

定義時 都必須在前面加上struct或者class

大括號後需要加分號

不同點struct(結構體)可用typedef進行簡寫,可向鍊錶中記錄一連串資料,可用陣列記錄多個資料

class(類)在基礎上還可以定義函式 且分為public(公共)、private(私有)、protected(保護)三大部分

在其他函式中定義資料時  

struct(結構體)

若struct(結構體)沒有使用typedef進行簡寫 需這樣定義  如struct 結構體名 資料名;若使用 可這樣定義簡稱 資料名;

class(類)

類名 資料名;且在定義時可直接進行傳參 如 類名 a(1,2);

struct和class的關係

一 預設繼承許可權。如果不明確指定,來自class的繼承按照private繼承處理,來自struct的繼承按照public繼承處理 二 成員的預設訪問許可權。class的成員預設是private許可權,struct預設是public許可權。除了這兩點,class和struct基本就是乙個東西。語法上...

struct和class的區別

1.值型別與引用型別 結構是值型別 值型別在堆疊上分配位址,所有的基型別都是結構型別,例如 int 對應system.int32 結構,string 對應 system.string 結構 通過使用結構可以建立更多的值型別 類是引用型別 引用型別在堆上分配位址 堆疊的執行效率要比堆的執行效率高,可是...

class和struct的區別

從語法上,在c 中 只討論c 中 class和struct做型別定義時只有兩點區別 一 預設繼承許可權。如果不明確指定,來自class的繼承按照private繼承處理,來自struct的繼承按照public繼承處理 二 成員的預設訪問許可權。class的成員預設是private許可權,struct預...