国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C++類和對(duì)象基礎(chǔ)知識(shí)詳解

這篇具有很好參考價(jià)值的文章主要介紹了C++類和對(duì)象基礎(chǔ)知識(shí)詳解。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

1.對(duì)象(object)

1.一切皆是對(duì)象。如下圖:
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

  • ·女人是一個(gè)對(duì)象
  • ·鞋子是一個(gè)對(duì)象
  • ·包包是一個(gè)對(duì)象
  • ·衣服是一個(gè)對(duì)象
  • ·褲子是一個(gè)對(duì)象
  • ·手鏈?zhǔn)且粋€(gè)對(duì)象

2.對(duì)象由對(duì)象組成.

這里人這個(gè)對(duì)象,由鞋子、包包、衣服、 褲子、手鏈等對(duì)象組成。
3.每個(gè)對(duì)象都有:

  1. a)數(shù)據(jù)(描述對(duì)象的屬性)
  2. b)函數(shù)(行為操作代碼)
    C++類和對(duì)象基礎(chǔ)知識(shí)詳解

2.類(class)

  1. ·具有相同屬性和行為的對(duì)象,我們可以把它抽象為類。
  2. ·類是對(duì)象的抽象
  3. ·對(duì)象是類的特例
    . C++類和對(duì)象基礎(chǔ)知識(shí)詳解

3.面向?qū)ο蟮某绦蛟O(shè)計(jì)(OOP)

·面向過程的程序設(shè)計(jì)(Process oriented programming)
在面向過程時(shí),我們重點(diǎn)圍繞功能,用一個(gè)函數(shù)去實(shí)現(xiàn)一個(gè)功能。

·面向?qū)ο蟮某绦蛟O(shè)計(jì)(Object oriented programming)
在面向?qū)ο髸r(shí),我們重點(diǎn)去描述對(duì)象的數(shù)據(jù)和功能。

a)設(shè)計(jì)所需的各種類。
b)定義各種各樣的對(duì)象。
c)向相關(guān)的對(duì)象發(fā)送消息,完成具體的任務(wù)。

4.類的聲明和對(duì)象的定義

1.設(shè)計(jì)類
關(guān)鍵字class
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

  • ·數(shù)據(jù)成員

C++類和對(duì)象基礎(chǔ)知識(shí)詳解

  • ·成員函數(shù)
    C++類和對(duì)象基礎(chǔ)知識(shí)詳解
  • 訪問權(quán)限

private–私有的 私有的成員只能在類的內(nèi)部訪問
public–公有的 公有的成員才可以在類的外部使用
protected–受保護(hù)的 先放一放。繼承

C++類和對(duì)象基礎(chǔ)知識(shí)詳解

為了考慮到封裝和信息隱藏,我們一般的使用原則是:
數(shù)據(jù)成員 都用private
成員函數(shù) 都用public

  • ·更加常用的方式

1.只在類的內(nèi)部聲明數(shù)據(jù)成員和成員函數(shù)。
2.在類的外部定義類的成員函數(shù)。
3.記得加上類的作用域。

C++類和對(duì)象基礎(chǔ)知識(shí)詳解

class和struct的區(qū)別

class 的默認(rèn)權(quán)限是private
struct的默認(rèn)權(quán)限是public

2.定義對(duì)象

·先聲明類 再定義對(duì)象
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

·聲明類的同時(shí),定義對(duì)象
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

·省略類名 直接定義對(duì)象
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

3.訪問對(duì)象的函數(shù)

對(duì)象名.函數(shù)名;

C++類和對(duì)象基礎(chǔ)知識(shí)詳解
4.命名規(guī)范
·類名首字母大寫
·對(duì)象名首字母小寫

5.并非所有的成員函數(shù)都必須是公有的!
如果一個(gè)成員函數(shù),它只需要在類的內(nèi)部使用,也就是這個(gè)函數(shù)只被類中的其他成員函數(shù)調(diào)用,而不需要再類的外部使用,那我們將它作為私有的成員函數(shù)。

5.類的成員函數(shù)

1.訪問權(quán)限:
·一般將需要被外界調(diào)用的成員函數(shù)指定為public,這是類對(duì)外的接口。
·若函數(shù)只在類的內(nèi)部調(diào)用,用來完成其他成員函數(shù)的功能,應(yīng)該指定為private。
·成員函數(shù)可以訪問本類中任何的成員,無論他是私有的還是公有的。C++類和對(duì)象基礎(chǔ)知識(shí)詳解
2.inline成員函數(shù) 內(nèi)置函數(shù)
內(nèi)聯(lián)函數(shù):
·使用內(nèi)聯(lián)函數(shù)節(jié)省時(shí)間,增加目標(biāo)程序的長(zhǎng)度。
·將規(guī)模很小,使用頻繁的函數(shù)聲明為內(nèi)聯(lián)函數(shù)。
·內(nèi)聯(lián)函數(shù)不能包含復(fù)雜的循環(huán)語句和switch語句。
·inline只是程序員對(duì)編譯系統(tǒng)的建議。
inline成員函數(shù):
·在類的內(nèi)部直接定義的函數(shù)將被隱式地指定為內(nèi)聯(lián)函數(shù)。
·在類的外部顯式地聲明內(nèi)聯(lián)函數(shù)。聲明 定義 inline

對(duì)象的存儲(chǔ)方式:

  1. ·各個(gè)數(shù)據(jù)分開存儲(chǔ)。
  2. ·成員函數(shù)共享內(nèi)存。
  3. ·跟訪問權(quán)限無關(guān)。
    C++類和對(duì)象基礎(chǔ)知識(shí)詳解
    6.訪問對(duì)象成員
    ·私有成員只能在成員函數(shù)中引用。直接使用成員名即可。
    ·公有數(shù)據(jù)成員可以在類外訪問public,但是考慮到封裝和信息隱藏。不要這樣做。
    ·公有成員函數(shù)可以在類外訪問,這是類對(duì)外的接口。

1.訪問對(duì)象中成員的3種方法:
·對(duì)象名+成員運(yùn)算符
·指向?qū)ο蟮闹羔?+ 指向運(yùn)算符
·對(duì)象的引用變量 + 成員運(yùn)算符

C++類和對(duì)象基礎(chǔ)知識(shí)詳解
2.私有數(shù)據(jù)成員如何訪問?
私有數(shù)據(jù)成員,只能通過成員函數(shù)訪問。
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

如果要獲取私有數(shù)據(jù)成員的值。
返回值:
C++類和對(duì)象基礎(chǔ)知識(shí)詳解
指針:
C++類和對(duì)象基礎(chǔ)知識(shí)詳解
引用:
C++類和對(duì)象基礎(chǔ)知識(shí)詳解
這種set和get函數(shù)去設(shè)置和獲取私有數(shù)據(jù)成員是很多設(shè)計(jì)者常用的方法。幾乎已經(jīng)成為慣例。
7.類的封裝與信息隱藏
函數(shù)的原型:
函數(shù)的封裝性:
1.函數(shù)的功能是什么?
2.函數(shù)的名字是什么?
3.函數(shù)有幾個(gè)參數(shù)?
4.每一個(gè)參數(shù)的類型是什么?
5.函數(shù)的返回值是什么?
函數(shù)的內(nèi)部:
1.采用什么樣的計(jì)算方法?
2.采用什么樣的程序結(jié)構(gòu)?
3.怎樣得到計(jì)算結(jié)果?
4.怎么返回?cái)?shù)據(jù)?
5.性能如何保證?

這樣的話,有些人專注于函數(shù)內(nèi)部的具體實(shí)現(xiàn)。有些人則只需要知道函數(shù)怎么用就可以了。對(duì)于一個(gè)開發(fā)團(tuán)隊(duì)來講,這樣的設(shè)計(jì)絕對(duì)是恰到好處的。

對(duì)于類來說也是同樣的道理:
·C++通過類來實(shí)現(xiàn)封裝性,把數(shù)據(jù)和跟數(shù)據(jù)相關(guān)的函數(shù)封裝在類中。
·聲明一個(gè)類之后,用戶只需要調(diào)用類的公用接口來實(shí)現(xiàn)具體的功能—消息傳遞
·用戶不必關(guān)心功能是如何實(shí)現(xiàn)的,只需要知道用哪一個(gè)函數(shù)可以實(shí)現(xiàn)什么樣的功能–信息隱藏
·類中被操作的數(shù)據(jù)是私有的,函數(shù)的實(shí)現(xiàn)細(xì)節(jié)是隱蔽的–私有實(shí)現(xiàn)
C++類和對(duì)象基礎(chǔ)知識(shí)詳解

補(bǔ)充2個(gè)概念:
方法:類的成員函數(shù)
消息:對(duì)公有成員函數(shù)的調(diào)用

如果在一個(gè)項(xiàng)目開發(fā)里面涉及到很多個(gè)類,可能幾百上千個(gè)類,那么類和類之間的關(guān)系式錯(cuò)綜復(fù)雜的,如果在設(shè)計(jì)這樣的程序里面,我要把每一個(gè)類里面的細(xì)節(jié)都搞清楚,這樣的認(rèn)知成本就太高了。而現(xiàn)在有了封裝和信息隱藏,在整個(gè)團(tuán)隊(duì)里面,我們只需要知道類的公用接口就可以了,而不需要知道它的私有實(shí)現(xiàn)。分工明確,開發(fā)效率高。

面向?qū)ο蟮某绦蛟O(shè)計(jì)特性:
封裝性
將數(shù)據(jù)和相關(guān)的代碼封裝在一個(gè)對(duì)象中。各個(gè)對(duì)象之間相對(duì)獨(dú)立,互不干擾。
將對(duì)象的數(shù)據(jù)隱藏,隱藏內(nèi)部實(shí)現(xiàn)的細(xì)節(jié),只留下一部分接口。

抽象性
類是對(duì)象的抽象,對(duì)象是類的特例。

繼承性
把最重要的特征,解決軟件的重用。

多態(tài)性
由繼承性產(chǎn)生相關(guān)不同的類。不同的對(duì)象,對(duì)象對(duì)同樣的消息會(huì)做出不一樣的反應(yīng)。

基于對(duì)象的程序設(shè)計(jì): 封裝 抽象
面向?qū)ο蟮某绦蛟O(shè)計(jì):封裝 抽象 繼承 多態(tài).文章來源地址http://www.zghlxwxcb.cn/news/detail-411053.html

到了這里,關(guān)于C++類和對(duì)象基礎(chǔ)知識(shí)詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【C++】入門基礎(chǔ)知識(shí)詳解(二)

    【C++】入門基礎(chǔ)知識(shí)詳解(二)

    目錄 一、內(nèi)聯(lián)函數(shù) 1、概念 2、特性 3、內(nèi)聯(lián)函數(shù)與宏的優(yōu)缺點(diǎn) 二、auto(C++11) ? 1、auto 簡(jiǎn)介 ? 2、auto的使用細(xì)則 ? ? 2.1?auto與指針和引用結(jié)合起來使用 ? ? 2.2?在同一行定義多個(gè)變量 ? 3、auto不能推導(dǎo)的場(chǎng)景 ? ? 3.1 auto 不能作為函數(shù)的參數(shù) ? ? 3.2 auto 不能直接用來聲

    2024年02月11日
    瀏覽(21)
  • 【C++】入門基礎(chǔ)知識(shí)詳解(一)

    【C++】入門基礎(chǔ)知識(shí)詳解(一)

    目錄 一、C++ 二、命名空間 ? 1、命名空間的定義 ? 2、命名空間的使用 三、C++輸入輸出 四、缺省參數(shù) ? 1、缺省參數(shù)的概念 ? 2、缺省參數(shù)的分類 ? ? 2.1 全缺省參數(shù) ? ? 2.2 半缺省參數(shù) 我們?cè)趯W(xué)習(xí)C++之前,我相信大家大多數(shù)都對(duì)C語言多多少少都有所了解,C語言的關(guān)鍵

    2024年02月12日
    瀏覽(30)
  • 詳解C++類和對(duì)象(下篇)

    詳解C++類和對(duì)象(下篇)

    目錄 一,再談構(gòu)造函數(shù) ?1.1 構(gòu)造函數(shù)體賦值 ?1. 2 初始化列表? 1.21 自定義類型成員? 1.22 ?const 成員變量 1.23?引用成員變量?? 1. 24 初始化列表的“坑” 1. 3 explicit ? 二,static 成員 2.1 概念? 2.2 特性? 三, 友元 3. 1 友元函數(shù) 3. 2 友元類? 特點(diǎn):? 3. 3 內(nèi)部類(了解)

    2024年02月04日
    瀏覽(31)
  • C++類和對(duì)象——多態(tài)詳解

    C++類和對(duì)象——多態(tài)詳解

    目錄 1.多態(tài)的基本語法 2.多態(tài)的原理剖析 示例:計(jì)算機(jī)類? 3.純虛函數(shù)和抽象類 示例:制作飲品 4.虛析構(gòu)和純虛析構(gòu)? 示例:電腦組裝 代碼示例: ? 空類的大小為1? 加了virtual后會(huì)變?yōu)?或8個(gè)字節(jié),這恰好是一個(gè)指針的大小 ? vfptr是一個(gè)虛函數(shù)(表)指針 當(dāng)子類重寫父類的

    2024年02月22日
    瀏覽(23)
  • C++ | 一些你所忽略的類和對(duì)象小知識(shí)

    C++ | 一些你所忽略的類和對(duì)象小知識(shí)

    在深度探索類的六大天選之子中,我們學(xué)習(xí)了類和對(duì)象的構(gòu)造函數(shù),知道了其可以用來初始化成員變量,也學(xué)了一些它的相關(guān)語法特性,但是C++中的構(gòu)造函數(shù)真的就只是這樣嗎?本模塊我們繼續(xù)來談?wù)動(dòng)嘘P(guān)構(gòu)造函數(shù)的一些知識(shí)點(diǎn) 引入 我們知道,對(duì)于下面這個(gè)類A的成員變量

    2024年02月04日
    瀏覽(21)
  • 【C++基礎(chǔ)(五)】類和對(duì)象(上)

    【C++基礎(chǔ)(五)】類和對(duì)象(上)

    ??博主CSDN主頁(yè):杭電碼農(nóng)-NEO?? ? ?專欄分類:C++初階之路? ? ??代碼倉(cāng)庫(kù):NEO的學(xué)習(xí)日記?? ? ??關(guān)注我??帶你學(xué)習(xí)C++ ? ???? C語言是面向過程的語言 關(guān)注的是過程 而C++是面向?qū)ο蟮恼Z言 關(guān)注的是對(duì)象 而類和對(duì)象就是面向?qū)ο蟮幕A(chǔ)! C++為了兼容C語言 保留了原先的玩

    2024年02月16日
    瀏覽(14)
  • SAP Fiori開發(fā)中的JavaScript基礎(chǔ)知識(shí)15 - 原型,object,constructor,class,繼承

    SAP Fiori開發(fā)中的JavaScript基礎(chǔ)知識(shí)15 - 原型,object,constructor,class,繼承

    本文將介紹JavaScript中的核心概念 - 原型,并會(huì)介紹基于原型的應(yīng)用場(chǎng)景object,constructor,class,繼承。 本文會(huì)將這幾個(gè)核心概念匯總在一篇博客中,因?yàn)檫@些概念是觸類旁通的,希望對(duì)你有幫助。 在JavaScript中,幾乎所有的東西都是對(duì)象,每個(gè)對(duì)象都有一個(gè) 特殊的內(nèi)部屬性

    2024年04月23日
    瀏覽(43)
  • C++ ------類和對(duì)象詳解六大默認(rèn)成員函數(shù)

    C++ ------類和對(duì)象詳解六大默認(rèn)成員函數(shù)

    如果我們定義一個(gè)類,然后這個(gè)類中什么也沒有。那么這里的類就什么也沒有嗎?其實(shí)不然,任何類在里面什么都不寫時(shí),編譯器都會(huì)生成6個(gè)默認(rèn)成員函數(shù)。 用戶沒有顯式實(shí)現(xiàn),編譯器會(huì)生成的成員函數(shù)稱為默認(rèn)成員函數(shù)。 六個(gè)默認(rèn)成員函數(shù) 我們來看一個(gè)Date類 觀察上述代

    2024年02月15日
    瀏覽(28)
  • C++關(guān)于類和對(duì)象的基礎(chǔ)語法

    C++關(guān)于類和對(duì)象的基礎(chǔ)語法

    目錄 前言: 1.OO語言 2.類的定義 3.類的訪問限定符與封裝的引入 4.類的實(shí)例化 5.this指針(很重要) 6.this空指針問題 總結(jié): 類的訪問限定符與this指針很重要,在后面會(huì)一直用,下一章將會(huì)介紹六大默認(rèn)成員函數(shù)。 1.OO語言 談到類,就離不開對(duì)象,而像我們的c++,Java也

    2024年03月23日
    瀏覽(22)
  • 【C++精華鋪】6.C++類和對(duì)象(下)類與對(duì)象的知識(shí)補(bǔ)充及編譯器優(yōu)化

    【C++精華鋪】6.C++類和對(duì)象(下)類與對(duì)象的知識(shí)補(bǔ)充及編譯器優(yōu)化

    目錄 1. 再談構(gòu)造 1.1 成員變量的初始化(初始化列表) 1.2 初始化列表的行為 1.3?explicit ?2. 類中的static成員 2.1 靜態(tài)成員變量 2.2 靜態(tài)成員函數(shù) 3. 友元 3.1 友元函數(shù) 3.1 友元類 4. 內(nèi)部類 ?5. 匿名對(duì)象 ?6. 對(duì)象拷貝時(shí)候的編譯器優(yōu)化 ? ? ? ? ? 為什么還要去看初始化的問

    2024年02月13日
    瀏覽(27)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包