欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

c++中struct和class的區(qū)別小結(jié)

 更新時間:2023年08月30日 08:53:57   作者:wniuniu_  
在C++中,class和struct都是用于定義自定義數(shù)據(jù)類型的關(guān)鍵字,本文主要介紹了c++中struct和class的區(qū)別小結(jié),具有一定的參考價值,感興趣的可以了解一下

前言

在C++中,class和struct都是用于定義自定義數(shù)據(jù)類型的關(guān)鍵字,但它們之間有一些區(qū)別。這些區(qū)別主要涉及成員的默認(rèn)訪問權(quán)限和繼承。

正題

成員的默認(rèn)訪問權(quán)限:

  • 在class中,默認(rèn)情況下,成員的訪問權(quán)限是private,這意味著除了類的內(nèi)部,其他地方無法直接訪問類的私有成員。
  • 在struct中,默認(rèn)情況下,成員的訪問權(quán)限是public,這意味著類的外部也可以直接訪問結(jié)構(gòu)體的成員。

繼承:

  • 當(dāng)使用class定義類時,默認(rèn)的繼承訪問權(quán)限是private,這意味著基類的成員對派生類是private的,除非通過繼承控制符進(jìn)行了顯式修改。
  • 當(dāng)使用struct定義類時,默認(rèn)的繼承訪問權(quán)限是public,這意味著基類的成員對派生類是public的,除非通過繼承控制符進(jìn)行了顯式修改。

以下是一個示例,演示了class和struct之間的區(qū)別:

#include <iostream>
class ClassExample {
? ? int privateMember;
public:
? ? int publicMember;
? ? ClassExample() : privateMember(0), publicMember(0) {}
? ? void ShowPrivate() {
? ? ? ? std::cout << "Private: " << privateMember << std::endl;
? ? }
};
struct StructExample {
? ? int privateMember;
public:
? ? int publicMember;
? ? StructExample() : privateMember(0), publicMember(0) {}
? ? void ShowPrivate() {
? ? ? ? std::cout << "Private: " << privateMember << std::endl;
? ? }
};
int main() {
? ? ClassExample classObj;
? ? StructExample structObj;
? ? classObj.publicMember = 42;
? ? structObj.publicMember = 42;
? ? classObj.privateMember; ? // 無法訪問,因為 privateMember 是 private 的
? ? structObj.privateMember; ?// 可以訪問,因為 privateMember 是 public 的
? ? return 0;
}

總之,class和struct的主要區(qū)別在于默認(rèn)的成員訪問權(quán)限和繼承訪問權(quán)限。然而,這兩者在其他方面都可以用來定義類,包括成員變量、成員函數(shù)、構(gòu)造函數(shù)等。選擇使用哪個關(guān)鍵字取決于你希望如何組織和訪問類的成員。

到此這篇關(guān)于c++中struct和class的區(qū)別小結(jié)的文章就介紹到這了,更多相關(guān)c++ struct class內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C語言中宏定義的教學(xué)詳解

    C語言中宏定義的教學(xué)詳解

    在C語言中,宏定義是預(yù)處理器的指令,主要用于為各種數(shù)據(jù)創(chuàng)建別名,這篇文章主要來和大家分享一下宏定義的相關(guān)基礎(chǔ)知識,需要的小伙伴可以了解一下
    2023-07-07
  • 學(xué)習(xí)二維動態(tài)數(shù)組指針做矩陣運算的方法

    學(xué)習(xí)二維動態(tài)數(shù)組指針做矩陣運算的方法

    這片文章介紹了如何利用二維動態(tài)數(shù)組指針做矩陣運算,需要的朋友可以參考下
    2015-07-07
  • C/C++實現(xiàn)獲取硬盤序列號的示例代碼

    C/C++實現(xiàn)獲取硬盤序列號的示例代碼

    獲取硬盤的序列號、型號和固件版本號,此類功能通常用于做硬盤綁定或硬件驗證操作,下面我們就來學(xué)習(xí)一下如何使用C/C++實現(xiàn)獲取硬盤序列號吧
    2023-11-11
  • C語言中的指針新手初階指南

    C語言中的指針新手初階指南

    指針是C語言的靈魂,精華之所在,指針強(qiáng)大而危險,用得好是一大利器,用得不好是一大潛在危害,下面這篇文章主要給大家介紹了C語言中指針的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-10-10
  • C 語言基礎(chǔ)教程(我的C之旅開始了)[十]

    C 語言基礎(chǔ)教程(我的C之旅開始了)[十]

    C 語言基礎(chǔ)教程(我的C之旅開始了)[十]...
    2007-02-02
  • C++類型轉(zhuǎn)換和IO流操作處理教程

    C++類型轉(zhuǎn)換和IO流操作處理教程

    這篇文章主要給大家介紹了關(guān)于C++類型轉(zhuǎn)換和IO流操作處理的相關(guān)資料,標(biāo)準(zhǔn)C++為了加強(qiáng)類型轉(zhuǎn)換的可視性,引入了四種命名的強(qiáng)制類型轉(zhuǎn)換操作符,文中給出了詳細(xì)的代碼示例,需要的朋友可以參考下
    2023-08-08
  • C++基于對話框的程序的框架實例

    C++基于對話框的程序的框架實例

    這篇文章主要介紹了C++基于對話框的程序的框架,以實例形式講述了C++對話框程序框架,有助于深入理解基于C++的Windows程序設(shè)計,需要的朋友可以參考下
    2014-10-10
  • 基于opencv實現(xiàn)視頻中的顏色識別功能

    基于opencv實現(xiàn)視頻中的顏色識別功能

    這篇文章主要介紹了基于opencv實現(xiàn)視頻中的顏色識別功能,文章詳細(xì)介紹了顏色識別的原理及opencv中的顏色模型,基于c++代碼實現(xiàn)顏色識別功能,需要的朋友可以參考下
    2022-07-07
  • C語言指針的長度和類型深入分析

    C語言指針的長度和類型深入分析

    這篇文章主要介紹了C語言指針的長度和類型,針對常見的各個類型進(jìn)行了相對詳細(xì)的分析,需要的朋友可以參考下
    2014-09-09
  • C++處理圖存儲的方式分享

    C++處理圖存儲的方式分享

    這篇文章主要介紹了C++處理圖存儲的方式分享,文章圍繞鄰接矩陣、鄰接表、鏈?zhǔn)角跋虻闹黝}展開詳細(xì)內(nèi)容,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03

最新評論