C 網域名稱空間和作用域

2021-09-02 22:21:50 字數 631 閱讀 2769

網域名稱空間: 通俗的講就是在乙個大括號括起來的範圍,然後用乙個名稱來稱呼。再通俗點就是告訴別人這是在哪個地盤內的事情

作用域:  作用域就是宣告地盤,宣告在某個地盤,屬於哪個地盤的東西(作用域分為全域性作用域和指定區域性作用域)

全域性作用域: 全域性宣告的變數和函式預設作用域是全域性的,區域性的只是在乙個函式和**塊範圍內有效

namespaace a{

int      num;

void     fun( ) {  

printr("aaaaaaaaaaaaaaa\r\n")  ;

int  num;                                             //類內宣告全域性變數

int   main(){

num = 10 ;                      //未宣告作用域,預設呼叫全域性的 也可加作用域符與以區分 ::

using namespace   a;   //使用a命名空間裡的所有變數和函式

int   num = 100;             //直接呼叫  或者 using a:: num;

fun();                          //直接呼叫  或者  using a:: fun();

命名空間和作用域

1 命名空間查詢順序 假設我們要使用變數 runoob,則 python 的查詢順序為 直譯器會從命名空間中查詢runoob,它先從區域性空間查詢,如果找到了它就會使用區域性命名空間的變數runoob,即使全域性命名空間也有變數runoob。這就很容易理解為什麼在函式內部宣告的區域性變數會覆蓋掉在模...

命名空間和作用域

命名空間是對棧區的劃分,存放名字的地方.有了命名空間之後,就可以在棧區中存放相同的名字 存放的名字 存放的python直譯器內建的名字 存活週期 python直譯器啟動則產生,python直譯器關閉則銷毀 print input 存放的名字 只要不是函式內定義 也不是內建的,剩下的都是全域性命名空間...

命名空間和作用域

函式內部的函式只能在函式內部呼叫,不能在函式外部呼叫,通過接下來的學習你將會知道為什麼會出現這種情況。def f1 def f2 print from f2 f2 f2 nameerror name f2 is not defined 命名空間 name spaces 在記憶體管理那一章節時,我們曾...