4 回答

TA貢獻(xiàn)4條經(jīng)驗(yàn) 獲得超0個(gè)贊
在C++中,結(jié)構(gòu)體 和 類,是基本相同的
結(jié)構(gòu)體和類的區(qū)別在于:
結(jié)構(gòu)體的變量、屬性的默認(rèn)狀態(tài)是 protected
而類的變量屬性,默認(rèn)是 public
綜上,結(jié)構(gòu)體和類的本質(zhì)是一樣的,只是默認(rèn)的權(quán)限不一致

TA貢獻(xiàn)883條經(jīng)驗(yàn) 獲得超454個(gè)贊
C的struct和Java的class都是為了進(jìn)行數(shù)據(jù)抽象——如果你這樣看的話,那它們確實(shí)有些類似。
但還是有關(guān)鍵的不同:Java的class更多地表現(xiàn)出“面向?qū)ο蟆钡奶匦裕?span>C的struct只是個(gè)支持?jǐn)?shù)據(jù)抽象的結(jié)構(gòu),struct本身并不支持面向?qū)ο蟮牟僮鳌.?dāng)然面向?qū)ο蟊举|(zhì)上是一種編程思想,你也可以用struct實(shí)現(xiàn)類似面向?qū)ο蟮墓δ堋?/span>
另外,被采納的那個(gè)答案說(shuō)錯(cuò)了:
在C++中class和struct確實(shí)是幾乎一樣的,你用這兩個(gè)關(guān)鍵字都可以定義類。但是用class定義的類,其成員默認(rèn)是private的;用struct定義的類,其成員是public的

TA貢獻(xiàn)2條經(jīng)驗(yàn) 獲得超0個(gè)贊
好像結(jié)構(gòu)體中不可以有函數(shù),而類可以,且類有,封裝,繼承,多態(tài)
- 4 回答
- 0 關(guān)注
- 5439 瀏覽
添加回答
舉報(bào)