變數的作用域

2022-08-10 03:12:13 字數 598 閱讀 4080

變數的有效範圍稱為變數的作用域。變數有4種不同的作用域:檔案作用域,函式作用域,塊作用域和函式原型作用域。檔案作用域是全域性的,其他三者是區域性的。

除了變數之外,任何以識別符號代表的實體(如函式、陣列、結構體、類等)都有作用域,概念與變數的作用域類似。

全域性變數:

全域性變數的作用域只限於定義的位置起到檔案終了的位置止。

1、作用:增加了函式資料聯絡的渠道。

2、建議不在必要時不要使用全域性變數,因為:

①、全域性變數在程式的全部執行過程中都占用儲存空間,而不是在需要時開闢單元。

②、使函式的通用性降低了,因為在執行函式時要受到外部變數的影響。

一般要求把程式中的函式做成乙個封閉體,除了可以通過「實參——形參」的渠道與外界發生聯絡外,沒有其他渠道。這樣的程式移植性好,可讀性強。

③、使用全域性變數過多,會降低程式的清晰性,人們往往難以清楚地判斷出每個瞬時全域性變數的值。

3、如果在乙個原始檔中,全域性變數和區域性變數同名,則在區域性變數的作用範圍內,全域性變數被遮蔽,即它不起作用,此時可以使用區域性變數。

注意:如果在類中宣告了乙個static變數,那麼這個static變數的作用域只限制於類內,無論實體化多少個物件,它都 只有乙份實體。

作用域,變數作用域,作用域鏈知識

第2章 變數作用域 第3章 作用域鏈 預覽 1.全域性作用域 整個script標籤下 或者是單獨的js檔案 外部js 2.區域性作用域也叫 函式作用域 在函式內部就是區域性作用域 這個 的名字 變數 只在函式內部起作用和效果 3.不同作用域下,定義相同變數名是不衝突的。如果是在同一作用域宣告2個相同...

變數的作用域

1 int i for i 0 i 10 i text console.writeline last text output in loop text 失敗,字串變數text是for迴圈的區域性變數,這段 不能編譯,因為在該迴圈外部呼叫的console.writeline 試圖使用該變數text,這...

變數的作用域

首先定義全域性變數和區域性變數 如下 import import scope.h int gglobalvar 300 int main int argc,const char argv return 0 2015 04 01 14 52 12.123 extern 1924 303 300 201...