最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++ class和struct到底有什么區(qū)別詳解

 更新時(shí)間:2021年03月04日 14:34:19   投稿:zx  
這篇文章主要介紹了C++ class和struct到底有什么區(qū)別詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

C++ 中保留了C語(yǔ)言的 struct 關(guān)鍵字,并且加以擴(kuò)充。在C語(yǔ)言中,struct 只能包含成員變量,不能包含成員函數(shù)。而在C++中,struct 類(lèi)似于 class,既可以包含成員變量,又可以包含成員函數(shù)。

C++中的 struct 和 class 基本是通用的,唯有幾個(gè)細(xì)節(jié)不同:

  • 使用 class 時(shí),類(lèi)中的成員默認(rèn)都是 private 屬性的;而使用 struct 時(shí),結(jié)構(gòu)體中的成員默認(rèn)都是 public 屬性的。
  • class 繼承默認(rèn)是 private 繼承,而 struct 繼承默認(rèn)是 public 繼承。
  • class 可以使用模板,而 struct 不能。

C++ 沒(méi)有拋棄C語(yǔ)言中的 struct 關(guān)鍵字,其意義就在于給C語(yǔ)言程序開(kāi)發(fā)人員有一個(gè)歸屬感,并且能讓C++編譯器兼容以前用C語(yǔ)言開(kāi)發(fā)出來(lái)的項(xiàng)目。

在編寫(xiě)C++代碼時(shí),我強(qiáng)烈建議使用 class 來(lái)定義類(lèi),而使用 struct 來(lái)定義結(jié)構(gòu)體,這樣做語(yǔ)義更加明確。

使用 struct 來(lái)定義類(lèi)的一個(gè)反面教材:

#include <iostream>
using namespace std;
struct Student{
  Student(char *name, int age, float score);
  void show();
  char *m_name;
  int m_age;
  float m_score;
};
Student::Student(char *name, int age, float score): m_name(name), m_age(age), m_score(score){ }
void Student::show(){
  cout<<m_name<<"的年齡是"<<m_age<<",成績(jī)是"<<m_score<<endl;
}
int main(){
  Student stu("小明", 15, 92.5f);
  stu.show();
  Student *pstu = new Student("李華", 16, 96);
  pstu -> show();
  return 0;
}

運(yùn)行結(jié)果:
小明的年齡是15,成績(jī)是92.5
李華的年齡是16,成績(jī)是96

這段代碼可以通過(guò)編譯,說(shuō)明 struct 默認(rèn)的成員都是 public 屬性的,否則不能通過(guò)對(duì)象訪問(wèn)成員函數(shù)。如果將 struct 關(guān)鍵字替換為 class,那么就會(huì)編譯報(bào)錯(cuò)。

到此這篇關(guān)于C++ class和struct到底有什么區(qū)別詳解的文章就介紹到這了,更多相關(guān)C++ class struct內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解C++的靜態(tài)內(nèi)存分配與動(dòng)態(tài)內(nèi)存分配

    詳解C++的靜態(tài)內(nèi)存分配與動(dòng)態(tài)內(nèi)存分配

    內(nèi)存分配 (Memory Allocation) 是指為計(jì)算機(jī)程序或服務(wù)分配物理內(nèi)存空間或虛擬內(nèi)存空間的一個(gè)過(guò)程,本文主要介紹了C++的靜態(tài)內(nèi)存分配與動(dòng)態(tài)內(nèi)存分配,感興趣的同學(xué)可以參考閱讀
    2023-06-06
  • C++ com編程學(xué)習(xí)詳解

    C++ com編程學(xué)習(xí)詳解

    這篇文章主要介紹了C++ COM編程的學(xué)習(xí)過(guò)程,在C++中,可以使用抽象基類(lèi)來(lái)實(shí)現(xiàn)COM接口,需要的朋友可以參考下,希望能夠給你帶來(lái)幫助
    2021-09-09
  • C語(yǔ)言實(shí)現(xiàn)酒店客房管理系統(tǒng)課程設(shè)計(jì)

    C語(yǔ)言實(shí)現(xiàn)酒店客房管理系統(tǒng)課程設(shè)計(jì)

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)酒店客房管理系統(tǒng)課程設(shè)計(jì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C++并查集親戚(Relations)算法實(shí)例

    C++并查集親戚(Relations)算法實(shí)例

    這篇文章主要介紹了C++并查集親戚(Relations)算法,實(shí)例分析了并查集親戚算法的原理與實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-04-04
  • 深入解析設(shè)計(jì)模式中的適配器模式在C++中的運(yùn)用

    深入解析設(shè)計(jì)模式中的適配器模式在C++中的運(yùn)用

    這篇文章主要介紹了設(shè)計(jì)模式中的適配器模式在C++中的運(yùn)用,通常適配器模式可以細(xì)分為類(lèi)適配器和對(duì)象適配器兩種情況,需要的朋友可以參考下
    2016-03-03
  • C++實(shí)現(xiàn)順序表的常用操作(插入刪出查找輸出)

    C++實(shí)現(xiàn)順序表的常用操作(插入刪出查找輸出)

    實(shí)現(xiàn)順序表的插入,刪除,查找,輸出操作在C語(yǔ)言中經(jīng)常用到。下面小編給大家整理實(shí)現(xiàn)代碼,一起看下吧
    2016-08-08
  • C++ 使用CRC32檢測(cè)內(nèi)存映像完整性的實(shí)現(xiàn)步驟

    C++ 使用CRC32檢測(cè)內(nèi)存映像完整性的實(shí)現(xiàn)步驟

    當(dāng)我們使用動(dòng)態(tài)補(bǔ)丁的時(shí)候,那么內(nèi)存中同樣不存在校驗(yàn)效果,也就無(wú)法抵御對(duì)方動(dòng)態(tài)修改機(jī)器碼了,為了防止解密者直接對(duì)內(nèi)存打補(bǔ)丁,我們需要在硬盤(pán)校驗(yàn)的基礎(chǔ)上,增加內(nèi)存校驗(yàn),防止動(dòng)態(tài)補(bǔ)丁的運(yùn)用。
    2021-06-06
  • Qt實(shí)現(xiàn)可以計(jì)算大數(shù)的簡(jiǎn)單計(jì)算器

    Qt實(shí)現(xiàn)可以計(jì)算大數(shù)的簡(jiǎn)單計(jì)算器

    計(jì)算器是我們生活中很常見(jiàn)的東西,它可以由多種語(yǔ)言多種方式來(lái)實(shí)現(xiàn)。本文主要介紹的是基于C++語(yǔ)言,由QT實(shí)現(xiàn)的可以計(jì)算大數(shù)的簡(jiǎn)單計(jì)算器,需要的可以參考一下
    2022-12-12
  • 淺談int8_t int64_t size_t ssize_t的相關(guān)問(wèn)題(詳解)

    淺談int8_t int64_t size_t ssize_t的相關(guān)問(wèn)題(詳解)

    下面小編就為大家?guī)?lái)一篇淺談int8_t int64_t size_t ssize_t的相關(guān)問(wèn)題(詳解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-03-03
  • 詳解C/C++中const限定符總結(jié)

    詳解C/C++中const限定符總結(jié)

    const是一種限定符,被const所限定的變量其值不可以被改變。。這篇文章主要介紹了C/C++中const限定符總結(jié),通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-02-02

最新評(píng)論

洪湖市| 江孜县| 青铜峡市| 新乡市| 鄂州市| 尚义县| 手机| 道真| 区。| 南昌县| 盘锦市| 酒泉市| 湟中县| 湟中县| 锡林浩特市| 科技| 兖州市| 安远县| 泸水县| 民乐县| 湖口县| 靖宇县| 于都县| 岳西县| 安仁县| 清镇市| 邹城市| 安溪县| 安化县| 田林县| 黄石市| 咸宁市| 石门县| 苏尼特左旗| 阿城市| 屏东市| 鹤庆县| 武强县| 资阳市| 微山县| 成安县|