C 中的結構體與類的區別

2021-06-15 09:05:17 字數 493 閱讀 4992

類與結構體在c++中只有兩點區別,除此之外無任何區別。

(1)class中預設的成員訪問許可權是private的,而struct中則是public的。

(2)從class繼承預設是private繼承,而從struct繼承預設是public繼承。

成員運算子(·)和指向結構體成員運算子(->)的區別

兩者都是用來引用結構體變數的成員,但它們的應用環境是完全不一樣,前者是用在一般結構體變數中,而後者是與指向結構體變數的指標連用,例如:有定義

struct student

;struct student stud, *ptr=&stud;

則stud.num、stud.score、ptr->num等都是正確的引用方式,但ptr.num、stud->num就是不允許的,其實ptr->num相當於(*ptr).num,只是為了更為直觀而專門提供了這->運算子。

最後指出,這兩者都具有最高優先順序,按自左向右的方向結合。

C 中結構體與類的區別

學習了c 的物件導向,最常見的和寫的就是類結構體,下面主要介紹一下結構體和類的區別。首先類是c 中物件導向獨有的,但是c和c 中都有結構體,下面我們來看一下c和c 中結構體的區別。這裡主要從封裝 多型 繼承 封裝和訪問許可權幾個方面來說。1 c和c 中結構體的區別 1 多型 c的結構體內不允許有函式...

C 中結構體與類的區別

1,定義和使用非常相似,例子如下 public struct student public class question 使用 student s new student question q new question 2,兩者都是container型別,這表示它們可以包含其他資料型別作為成員。3,...

C中結構體與C 中類的區別

一 先說一下c中的結構體 作用 為了將不同型別的資料組合成乙個有機的整體。1 定義結構體變數的方式,例子 struct student 結構體型別名 struct student lucy 結構體變數名 struct student p lucy 結構體指標變數名 解析 1 結構體型別名 stude...