深入C++可見性與生命期的區(qū)別詳解
變量的可見性(即作用域)和生命期既有區(qū)別,又有聯(lián)系。
一個變量在程序的某處沒有可見性,但生命期任然可以存在,比如局部靜態(tài)變量的可見性在它所在的函數(shù)里面,在函數(shù)外部不可訪問,但是它的生命期確是整個程序的運行期間;而一個變量生命期結(jié)束,它也就沒有了可見性,就像局部變量,隨著棧空間的釋放,它也就不存在了,所以外部無法訪問。
決定一個變量的可見性是變量被聲明的位置(就像局部靜態(tài)變量,由于在函數(shù)里面聲明,所以只能在函數(shù)里面可見),而決定一個變量的生命期是變量在內(nèi)存中的位置(就像靜態(tài)局部變量不是分配在棧上,而是分配在內(nèi)存靜態(tài)存儲區(qū),因此生命期也和普通局部變量不一樣).
相關(guān)文章
C++實現(xiàn)刪除txt文件中指定內(nèi)容的示例代碼
這篇文章主要介紹了C++實現(xiàn)刪除txt文件中指定內(nèi)容的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12C/C++?Qt?TableDelegate?自定義代理組件使用詳解
TableDelegate自定義代理組件的主要作用是對原有表格進行調(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-09