国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

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

2020-01-26 15:46:04
字體:
來源:轉載
供稿:網友

C中的結構體和C++中結構體的不同之處:在C中的結構體只能自定義數據類型,結構體中不允許有函數,而C++中的結構體可以加入成員函數。

C++中的結構體和類的異同:

一、相同之處:結構體中可以包含函數;也可以定義public、private、protected數據成員;定義了結構體之后,可以用結構體名來創建對象。但C中的結構體不允許有函數;也就是說在C++當中,結構體中可以有成員變量,可以有成員函數,可以從別的類繼承,也可以被別的類繼承,可以有虛函數。

二、不同之處:結構體定義中默認情況下的成員是public,而類定義中的默認情況下的成員是private的。類中的非static成員函數有this指針,(而struct中沒有是錯誤的,一直被誤導啊,經過測試struct的成員函數一樣具有this指針),類的關鍵字class能作為template模板的關鍵字 即template<class T> class A{}; 而struct不可以。

實際上,C中的結構體只涉及到數據結構,而不涉及到算法,也就是說在C中數據結構和算法是分離的,而到C++中一類或者一個結構體可以包含函數(這個函數在C++我們通常中稱為成員函數),C++中的結構體和類體現了數據結構和算法的結合。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 木兰县| 朝阳县| 彩票| 兴文县| 沙雅县| 冷水江市| 合肥市| 招远市| 西贡区| 北票市| 镶黄旗| 资讯 | 南澳县| 克什克腾旗| 广宁县| 大丰市| 西乌珠穆沁旗| 韶山市| 原平市| 永清县| 东源县| 宜川县| 石台县| 九寨沟县| 晴隆县| 措勤县| 高安市| 浪卡子县| 丹巴县| 中西区| 罗平县| 噶尔县| 汝阳县| 新闻| 枣阳市| 克拉玛依市| 中江县| 龙胜| 石景山区| 教育| 兴文县|