c 作用域及命名空間

2021-08-07 17:23:57 字數 838 閱讀 9922

什麼是作用域

每乙個變數、函式、陣列、結構體、類、等實體都有其自己有效的作用範圍,這就是變數的作用域。

在區域性變數中,區域性變數只在定義的函式範圍內有效;即從變數定義開始到函式結束被釋放。

int fun()

//a的作用域結束

在全域性變數中,全域性變數的作用域為從定義變數的位置開始到本原始檔結束。

若全域性變數與區域性變數重名,則在區域性變數作用域中優先使用區域性變數;

若想在區域性變數作用域中使用全域性變數需要使用作用域限定符(::)

#include

using

namespace

std;

int a = 1; //全域性變數a的作用域開始

void fun();

int main()

//主函式結束區域性變數a作用域結束;本原始檔結束,全域性變數a的作用域結束

4.標準命名空間stdc++標準庫所有識別符號都是在乙個名為std的命名空間中定義的,或者說標準標頭檔案中函式、類和物件模板是在命名空間std中定義的;

因此為了減少::的使用可以在檔案開頭加入 using namespace std;

c 作用域及命名空間

什麼是作用域 每乙個變數 函式 陣列 結構體 類 等實體都有其自己有效的作用範圍,這就是變數的作用域。在區域性變數中,區域性變數只在定義的函式範圍內有效 即從變數定義開始到函式結束被釋放。int fun a的作用域結束 在全域性變數中,全域性變數的作用域為從定義變數的位置開始到本原始檔結束。若全域性...

命名空間 Python 函式命名空間及作用域

全域性命名空間 個人寫的 但不是函式中的 區域性命名空間 函式 各級別命名空間之間使用關係 def max l print in max func print max 1,2,3 def func s func 函式的記憶體位址 函式名 函式的呼叫 函式的記憶體位址 函式的呼叫 print in m...

命名空間與作用域

命名空間即存放名字與物件對映 繫結關係的地方。對於x 3,python會申請記憶體空間存放物件3,然後將名字x與3的繫結關係存放於命名空間中,del x表示清除該繫結關係。在程式執行期間最多會存在三種命名空間 伴隨python直譯器的啟動 關閉而產生 因而是第乙個被載入的命名空間,用來存放一些內建的...