深入C++可見性與生命期的區(qū)別詳解
變量的可見性(即作用域)和生命期既有區(qū)別,又有聯(lián)系。
一個(gè)變量在程序的某處沒有可見性,但生命期任然可以存在,比如局部靜態(tài)變量的可見性在它所在的函數(shù)里面,在函數(shù)外部不可訪問,但是它的生命期確是整個(gè)程序的運(yùn)行期間;而一個(gè)變量生命期結(jié)束,它也就沒有了可見性,就像局部變量,隨著??臻g的釋放,它也就不存在了,所以外部無法訪問。
決定一個(gè)變量的可見性是變量被聲明的位置(就像局部靜態(tài)變量,由于在函數(shù)里面聲明,所以只能在函數(shù)里面可見),而決定一個(gè)變量的生命期是變量在內(nèi)存中的位置(就像靜態(tài)局部變量不是分配在棧上,而是分配在內(nèi)存靜態(tài)存儲(chǔ)區(qū),因此生命期也和普通局部變量不一樣).
相關(guān)文章
C++驗(yàn)證LeetCode包圍區(qū)域的DFS方法
這篇文章主要介紹了C++驗(yàn)證LeetCode包圍區(qū)域的DFS方法,本篇文章通過簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07C++實(shí)現(xiàn)刪除txt文件中指定內(nèi)容的示例代碼
這篇文章主要介紹了C++實(shí)現(xiàn)刪除txt文件中指定內(nèi)容的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12C/C++?Qt?TableDelegate?自定義代理組件使用詳解
TableDelegate自定義代理組件的主要作用是對(duì)原有表格進(jìn)行調(diào)整,本文主要介紹了QT中TableDelegate?自定義代理組件的使用教程,感興趣的朋友可以了解一下2021-12-12C語言中經(jīng)socket接收數(shù)據(jù)的相關(guān)函數(shù)詳解
這篇文章主要介紹了C語言中經(jīng)socket接收數(shù)據(jù)的相關(guān)函數(shù)詳解,分別為recv()函數(shù)和recvfrom()函數(shù)以及recvmsg()函數(shù)的使用,需要的朋友可以參考下2015-09-09C++ 使用模板實(shí)現(xiàn)一個(gè)List的實(shí)例
這篇文章主要介紹了 C++ 使用模板實(shí)現(xiàn)一個(gè)List的實(shí)例的相關(guān)資料,需要的朋友可以參考下2017-05-05