深入C 可見性與生命期的區別詳解

2022-10-04 05:15:07 字數 402 閱讀 8713

變數的可見性(即作用域)和生命期既有區別,又有聯絡。

乙個變數在程式的某處沒有可見性,www.cppcns.com但生命期任www.cppcns.com然可以存在,比如區域性靜態變數的可見性在它所在的函式裡面,在函式外部不可訪問,但是它的生命期確是整個程式的執行期間;而乙個變數生命期結束,它也就沒有了可見性,就像區域性變數,隨著棧空間的釋放,它也就不存在了,所以外部無法訪問。

決定乙個變數的可見性是變數被宣告的位置(就像區域性靜態變數,由於在函式裡面宣告,所以只能在函式裡面可見),而決定乙個變數的生命期是變數在記憶體中的位置zdkyz(就像靜態區域性變數不是分配在棧上,而是分配在記憶體靜態儲存區,因此生命期也和普通區域性變數不一樣).

本文標題: 深入c++可見性與生命期的區別詳解

本文位址: /ruanjian/c/94853.html

C C 中變數的可見性與生命期區別的本質原因

可見性與生命期 可見性又可稱為 作用域,它是 棧 這種儲存方式的表現形式。不管是全域性的可見性 全域性作用域 還是區域性可見性 區域性作用域 從乙個物件 或稱為變數 例項 的入棧 開始可見 到其出棧 變成不可見 是該物件的整個的作用域。可見性與生命期是兩個分立的概念,但似乎又存在這某種聯絡。比如 如...

C 多執行緒與非同步的區別詳解

c 多執行緒與非同步的區別詳解 多執行緒和非同步操作的異同 多執行緒和非同步操作兩者都可以達到避免呼叫執行緒阻塞的目的,從而提高軟體的可響應性。甚至有些時候我們就認為多執行緒和非同步操作是等同的概念。但是,多執行緒和非同步操作還是有一些區別的。而這些區別造成了使用多執行緒和非同步操作的時機的區別。非...

C 指標與引用的區別案例詳解

從概念上講。指標從本質上講就是存放變數位址的乙個變數,在邏輯上是獨立的,它可以被改變,包括其所指向的位址的改變和其指向的位址中所存放的資料的改變。而引用是乙個別名,它在邏輯上不是獨立的,它的存在具有依附性,所以引用必須在一程式設計客棧開始就被初始化,而且其引用的物件在其整個生命週期中是不能被改變的 ...