亚洲一级电影在线观看,九九精品无码专区免费,亚洲AV无码资源在线观看 ,欧美国产高清

c++程序語言特點

時間:2024-09-28 12:12:17 計算機等級 我要投稿
  • 相關推薦

c++程序語言特點

  C語言是1972年由美國貝爾實驗室的D.M.Ritchie研制成功的。它不是為初學者設計的,而是為計算機專業人員設計的。下面是小編搜集的c++程序語言特點,希望大家認真閱讀!

  1. C++內存可分為以下區域:

  全局/靜態數據區

  常量數據區(其中的數據不能被修改)

  代碼區

  堆

  棧

  備注:全局/靜態區,常量數據區實際上都在進程的數據區中。

  2.堆和棧上分配內存的性能比較:

  (1) 棧上的內存是系統自動分配的,不需要用戶主動分配和釋放;

  (2) 棧上分配的內存效率比較高(不需要經過堆管理器分配,一系列查找空閑堆的邏輯);

  (3) 棧上分配的內存,是連續的,不會導致內存碎片。

  3. 虛函數表指針

  虛函數表的指針,占據類對象內存最開始的4個字節。

  (1)存放位置:

  類對象開始的4個字節存放的是虛函數表的指針,而虛函數表本身放在常量區。

  (2)創建時機:

  在對象創建時,構造函數中會調用編譯器在構造函數內部插入的初始化代碼,來初始化虛函數指針,使其指向正確的虛函數表。

  (這就解釋了為什么構造函數不能是虛函數的問題)

  4. this指針

  類的非靜態成員函數,都會默認的傳this指針作為參數,以便在函數內部可以通過this指針訪問相應的類對象。

  在進入函數體前創建并傳參,在函數返回時銷毀。

  5. 類對象的創建過程

  首先,申請該對象對應的內存;

  其次,對類對象進行初始化,即調用類的構造函數。包括兩個步驟:執行初始化列表;執行構造函數體。

  注意:常量和引用類型的變量,必須在初始化列表中進行初始化。

  6. 內聯函數的聲明

  內聯函數聲明有兩種方式,通常我們只知道第一種:

  (1)顯式聲明:用“inline”關鍵字聲明;

  (2)隱式聲明:在類內聲明成員函數時,同時提供其函數體實現,這時候函數會被定義成內聯函數,不需要“inline”關鍵字聲明。

  例如:

  Class Student

  {

  public:

  String GetName() { return name; }

  }

  內聯函數的優點:

  (1) 避免一般函數調用的參數壓棧,棧幀開辟與回收,寄存器保存與恢復等開銷;

  (2) 由于編譯時函數代碼是完全展開的,編譯器可以對調用函數處的代碼做更深入的優化。

  缺點:多處調用,且代碼量較大的時候,會因為展開過多重復代碼導致目標程序變大。

【c++程序語言特點】相關文章:

概述C++語言特點08-19

播音主持的語言特點07-20

演講語言特點有哪些07-28

播音主持的語言特點及要求06-15

播音主持的語言特點及語言風格06-30

C++語言的基本符號08-01

精選C++面試題及答案05-23

2017年計算機二級C++語言程序設計考試內容08-11

C++語法規則積累10-13

商務英語四大語言特點08-07

主站蜘蛛池模板: 性高朝久久久久久久久久| 亚洲精品乱码久久久久蜜桃| 亚洲精品欧美二区三区中文字幕| 久久久久无码精品国产人妻无码| 国产xxxxx免费视频| 永嘉县| 99亚洲精品卡2卡三卡4卡2卡| 国产乱子轮xxx农村| 三上悠亚在线精品二区| 欧美牲交黑粗硬大| 无码精品a∨在线观看十八禁| 国内精品少妇在线播放| 逊克县| 97国产成人无码精品久久久| 99久久久国产精品免费无卡顿| 汽车| 五月天福利视频| 精品国产一区二区三区在线观看| 国产成人欧美| 天堂一区人妻无码| 邻居少妇张开腿让我爽了在线观看 | 久久99精品无码一区二区三区| 亚洲乱人伦aⅴ精品| 久久久久夜色精品波多野结衣| 日韩免费中文字幕| 99在线精品国自产拍| 成人午夜视频一区二区无码| 双腿张开被9个黑人调教影片| 国内揄拍国内精品少妇国语| 美女视频黄又黄又免费| 午夜福利午夜福利1000| 婷婷色香五月综合缴缴情| 久久精品av国产一区二区| 青草伊人久久综在合线亚洲| 亚洲一区二区三区高清在线看| 国产99视频精品免视看9| 临西县| 色综合a怡红院怡红院首页| 成人福利在线观看| 在线亚洲综合欧美网站首页| 国产精品久久久久久久久久直播|