色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

C++之繼承中構造和析構學習的總結

電子設計 ? 來源:電子設計 ? 作者:電子設計 ? 2020-12-24 16:10 ? 次閱讀

在我們前面學習過類中的構造函數(shù),以及析構函數(shù),那么自然而然,在繼承關系中,必然是存在著析構和構造著。

一、子類對象的構造

1、問題的引出

如何初始化父類成員?

父類構造函數(shù)和子類構造函數(shù)有什么關系?

2、子類中的構造函數(shù)怎樣初始化父類成員:

子類中也是可以定義構造函數(shù)的:

--必須對繼承而來的成員進行初始化,那么怎樣初始化呢?這里有兩種方式:

-直接通過初始化列表或者賦值的方式進行初始化

-調用父類構造函數(shù)進行初始化

3、父類構造函數(shù)在子類中的調用方式

默認調用

-適用于無參構造函數(shù)和使用默認參數(shù)的構造函數(shù)

顯示調用

-通過初始化列表進行調用

-適用于所有父類構造函數(shù)

實踐代碼模板:

代碼實踐:

輸出結果:

注解:通過上面的代碼輸出結果,我們可以發(fā)現(xiàn),子類定義的對象如果沒有沒有傳參,就隱式調用父類的構造函數(shù);當然上面也使用了顯示調用,通過初始列表的就可以看出。

4、構造規(guī)則

子類對象在創(chuàng)建時會首先調用父類的構造函數(shù)

先執(zhí)行父類構造函數(shù)再執(zhí)行子類的構造函數(shù)

父類構造函數(shù)可以被隱式調用或者顯示調用

5、對象創(chuàng)建時構造函數(shù)的調用順序

(1)調用父類的構造函數(shù)

(2)調用成員變量的構造函數(shù)

(3)調用類自身的構造函數(shù)

總結:先父母,后客人,再自己

代碼實踐:

輸出結果:

注解:我們可以看到,先定義了一個Child對象,然后最先訪問Object帶參構造函數(shù),然后再是Parent帶參構造函數(shù)(說白了就是父類先觸發(fā)),然后在子類Child中又包含了組合關系(也就是客人),然后Object類中的帶參構造函數(shù),最后再觸發(fā)自身的帶參構造函數(shù)。

二、子類對象的析構

1、析構函數(shù)的調用順序與構造函數(shù)相反

(1)執(zhí)行自身的析構函數(shù)

(2)執(zhí)行成員變量的析構函數(shù)

(3)執(zhí)行父類的析構函數(shù)

代碼實踐:

輸出結果:

三、總結:

子類對象在創(chuàng)建時需要調用父類構造函數(shù)進行初始化

先執(zhí)行父類構造函數(shù)然后執(zhí)行成員的構造函數(shù)

父類構造函數(shù)顯示調用需要在初始化列表中進行

子類對象在銷毀時需要調用父類析構函數(shù)進行清理

析構順序與構造順序對稱相反

審核編輯:符乾江
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 可編程邏輯
    +關注

    關注

    7

    文章

    515

    瀏覽量

    44083
  • C++
    C++
    +關注

    關注

    22

    文章

    2108

    瀏覽量

    73623
收藏 人收藏

    評論

    相關推薦

    同樣是函數(shù),在CC++中有什么區(qū)別

    同樣是函數(shù),在 CC++ 中有什么區(qū)別? 第一個返回值。 C語言的函數(shù)可以不寫返回值類型,編譯器會默認為返回 int。 但是 C++ 的函數(shù),除了
    的頭像 發(fā)表于 11-29 10:25 ?272次閱讀

    C語言中申請的堆內存能不能自動釋放

    C語言中申請的堆內存能不能自動釋放?每次都要手動 free 太麻煩,也容易忘記。 學過 C++ 的同學,應該首先能想到智能指針。 但是這是C語言,沒有類和對象、構造
    的頭像 發(fā)表于 11-27 09:33 ?108次閱讀

    C語言和C++結構體的區(qū)別

    同樣是結構體,看看在C語言和C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?199次閱讀

    C7000優(yōu)化C/C++編譯器

    電子發(fā)燒友網站提供《C7000優(yōu)化C/C++編譯器.pdf》資料免費下載
    發(fā)表于 10-30 09:45 ?0次下載
    <b class='flag-5'>C</b>7000優(yōu)化<b class='flag-5'>C</b>/<b class='flag-5'>C++</b>編譯器

    ostream在c++的用法

    ostream 是 C++ 標準庫中一個非常重要的類,它位于 頭文件(實際上,更常見的是通過包含 頭文件來間接包含 ,因為 包含了 和 )。 ostream 類及其派生類(如 std::cout
    的頭像 發(fā)表于 09-20 15:11 ?663次閱讀

    基于OpenHarmony標準系統(tǒng)的C++公共基礎類庫案例:SafeQueue

    1、程序簡介該程序是基于OpenHarmony的C++公共基礎類庫的線程安全隊列:SafeQueue。線程安全隊列,是在dequeue的基礎上封裝std::lock_guard,以此實現(xiàn)線程的相關
    的頭像 發(fā)表于 08-30 12:41 ?291次閱讀
    基于OpenHarmony標準系統(tǒng)的<b class='flag-5'>C++</b>公共基礎類庫案例:SafeQueue

    基于OpenHarmony標準系統(tǒng)的C++公共基礎類庫案例:SafeStack

    1、程序簡介該程序是基于OpenHarmony的C++公共基礎類庫的線程安全隊列:SafeQueue。線程安全隊列,是在dequeue的基礎上封裝std::lock_guard,以此實現(xiàn)線程的相關
    的頭像 發(fā)表于 08-30 12:41 ?320次閱讀
    基于OpenHarmony標準系統(tǒng)的<b class='flag-5'>C++</b>公共基礎類庫案例:SafeStack

    C++語言基礎知識

    電子發(fā)燒友網站提供《C++語言基礎知識.pdf》資料免費下載
    發(fā)表于 07-19 10:58 ?7次下載

    C++實現(xiàn)類似instanceof的方法

    C++有多態(tài)與繼承,但是很多人開始學習C++,有時候會面臨一個常見問題,就是如何向下轉型,特別是不知道具體類型的時候,這個時候就希望C++
    的頭像 發(fā)表于 07-18 10:16 ?574次閱讀
    <b class='flag-5'>C++</b><b class='flag-5'>中</b>實現(xiàn)類似instanceof的方法

    鴻蒙OS開發(fā)實例:【Native C++

    使用DevEco Studio創(chuàng)建一個Native C++應用。應用采用Native C++模板,實現(xiàn)使用NAPI調用C標準庫的功能。使用C標準庫hypot接口計算兩個給定數(shù)平方和的平
    的頭像 發(fā)表于 04-14 11:43 ?2594次閱讀
    鴻蒙OS開發(fā)實例:【Native <b class='flag-5'>C++</b>】

    使用 MISRA C++:2023? 避免基于范圍的 for 循環(huán)中的錯誤

    在前兩篇博客,我們?向您介紹了新的 MISRA C++ 標準?和?C++ 的歷史?。在這篇博客,我們將仔細研究以 C++
    的頭像 發(fā)表于 03-28 13:53 ?785次閱讀
    使用 MISRA <b class='flag-5'>C++</b>:2023? 避免基于范圍的 for 循環(huán)中的錯誤

    c語言,c++,java,python區(qū)別

    操作系統(tǒng)、嵌入式系統(tǒng)等對性能要求較高的場景。C語言的語法相對簡單,學習曲線較平緩,也是學習其他高級語言的入門語言。 C++C++是在
    的頭像 發(fā)表于 02-05 14:11 ?2367次閱讀

    vb語言和c++語言的區(qū)別

    Microsoft開發(fā)的一種面向對象的事件驅動編程語言。它的設計目標是簡化編程過程,讓初學者也能快速上手。與相比,C++語言是一種通用的、面向對象的編程語言,其設計目標是提供高性能的系統(tǒng)級編程。 語法: VB語言的語法較為簡單,使用了很多可讀性強的關鍵詞,如“
    的頭像 發(fā)表于 02-01 10:20 ?2258次閱讀

    C++簡史:C++是如何開始的

    的 MISRA C++:2023 博客系列的第二部分。 在這篇博客,我們將深入探討 C++ 的歷史、編程語言多年來的發(fā)展歷程以及它的下一步發(fā)展方向。
    的頭像 發(fā)表于 01-11 09:00 ?581次閱讀
    <b class='flag-5'>C++</b>簡史:<b class='flag-5'>C++</b>是如何開始的

    基于C/C++面向對象的方式封裝socket通信類流程簡

    在掌握了基于 TCP 的套接字通信流程之后,為了方便使用,提高編碼效率,可以對通信操作進行封裝,本著有淺入深的原則,先基于 C 語言進行面向過程的函數(shù)封裝,然后再基于 C++ 進行面向對象的類封裝。
    的頭像 發(fā)表于 12-26 10:00 ?1813次閱讀
    主站蜘蛛池模板: 国产成人拍精品免费视频爱情岛| 高清bblxx手机在线观看| 无人区在线日本高清免费| 青青草视频在线ac| 欧美zzo交| 青春禁区动漫免费观看| 青青操久久| 欧美亚洲韩日午夜| 日本一卡2卡3卡四卡精品网站| 日韩精品亚洲专区在线影院| 色欲AV色欲AV久久麻豆| 少妇高潮A视频| 亚洲刺激视频| 有码 亚洲 制服 国产 在线| 在线欧美免费人成视频| 97视频在线观看免费视频| 边摸边吃奶玩乳尖视频| 国产 高清 无码 在线播放| 国产精品玖玖玖影院| 国产色婷婷亚洲99麻豆| 久草色视频| 拍床戏被肉高H纯肉H在水| 日韩中文无线码在线视频| 消息称老熟妇乱视频一区二区 | 永久免费在线视频| a级男女性高爱潮高清试看| 国产精品JIZZ在线观看A片| 久久国产香蕉| 肉动漫3D卡通无修在线播放| 亚洲性夜夜夜色综合网| WWW污污污抽搐喷潮COM| 国内精品不卡一区二区三区| 欧美fxxx| 亚洲欧美精品无码大片在线观看 | 24小时日本在线观看片免费| 国产99久久久国产精品成人| 久久婷婷五月综合色丁香花| 日本欧美午夜三级| 正在播放国产精品| 国产午夜三级一区二区三| 暖暖视频免费观看高清完整版|