歡迎來到培訓無憂網!

全國切換

咨詢熱線 400-001-5729

位置:培訓無憂網 > 新聞資訊 > 電腦/IT > c語言 >  C語言培訓對象生存期&&static

C語言培訓對象生存期&&static

來源:達內教育 發(fā)布人:星星

2022-01-08 15:01:16|已瀏覽:300次

對象生存期&&static

      生存期,即從誕生到消失的時間段,在生存期內,對象的值或保持不變,知道改變他的值為止。對象生存期分為靜態(tài)生存期和動態(tài)生存期兩種。

靜態(tài)生存期
       指對象的生存期與程序運行期相同。在namespace中聲明的對象都具有靜態(tài)生存期。但是,在函數內部作用域中聲明具有動態(tài)生存期的對象,要用static修飾,如static int a。
       在局部作用域中,靜態(tài)變量的特點是不會隨函數的每次調用而產生一個副本,同時也不會因為函數的返回而消失。該變量會一直保持上一個值,在每次調用中可共享。同時靜態(tài)變量在定義時也可以賦值,如static int a = 3;
動態(tài)生存期
       除上述兩種情況,其余為動態(tài)生存期。在局部作用域中,有動態(tài)生存期的對象,也稱為局部生存期對象。局部生存期對象誕生于聲明點,結束于聲明塊執(zhí)行完畢。在類中不用static修飾的成員,他們的生存期和對象生存期一致。
類的靜態(tài)成員
      類的靜態(tài)成員是解決同一個類的不同對象之間數據和函數的共享問題的。如每生成一個對象,則計數+1,從而統(tǒng)計一共創(chuàng)建了多少個對象。
靜態(tài)數據成員
       在類的一個屬性中,如果某個屬性為整個類所共享,則用static修飾為靜態(tài)成員。該成員在每個類中只有一個副本,由所有對象共同維護,從而實現數據共享。
靜態(tài)數據成員具有靜態(tài)生存期,因為靜態(tài)數據成員不屬于任何對象,可以這么訪問,”類名::成員名 | 對象名.成員名 | 指針->成員名 | 引用.成員名“ 。另外,在類定義中,僅進行引用性聲明,而在namespace作用域中使用類名限定定義性聲明,或初始化。(原因:這樣定義是因為這種方式要專門分配空間,非靜態(tài)數據成員的空間與所屬對象空間是同時分配的,所以無須這樣定義)。
靜態(tài)函數成員

      靜態(tài)成員函數可以直接訪問類的靜態(tài)數據和函數成員,而訪問非靜態(tài)成員,必須通過對象名。所以一般情況下,靜態(tài)函數用來訪問類的靜態(tài)數據成員。

      本文由培訓無憂網達內教育專屬課程顧問老師整理發(fā)布,更多C語言課程信息可關注培訓無憂網C語言培訓頻道或添加老師微信:15033336050

      注:尊重原創(chuàng)文章,轉載請注明出處和鏈接 http://m.universityresearchassociates.com/news-id-13834.html 違者必究!部分文章來源于網絡由培訓無憂網編輯部人員整理發(fā)布,內容真實性請自行核實或聯(lián)系我們,了解更多相關資訊請關注c語言頻道查看更多,了解相關專業(yè)課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050

留下你的信息,課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!
  • 姓名:

  • 手機:

  • 地區(qū):

  • 想學什么:

  • 培訓無憂網
免 費 申 請 試 聽
提交申請,《培訓無憂網》課程顧問老師會一對一幫助你規(guī)劃更適合你的專業(yè)課程!