1. 程式人生 > >static關鍵字的作用

static關鍵字的作用

1、靜態全域性變數:被static修飾的變數只能在本檔案中使用,而不加static的全域性變數加上extern聲明後可以在別的檔案中使用。

2、靜態區域性變數:作用域為區域性作用域,以後的呼叫不再進行初始化,當定義它的函式或者語句塊結束時,其作用域隨之結束。

3、靜態函式:只能在本檔案內使用,不能被其他檔案使用,其他檔案中可以定義相同名字的函式,不會發生衝突;

4、靜態資料成員:對於非靜態資料成員,每個物件都有一份自己的拷貝;靜態資料成員中無論定義了多少個類的定義,都只有一份拷貝,由該型別的所有物件共享訪問。

靜態資料成員在全域性資料區分配記憶體,屬於本類的所有物件共享,所以,它不屬於特定的類物件,在沒有產生類物件時其作用域就可見,即在沒有產生類的例項時,我們就可以操作它;

5、靜態成員函式:靜態成員函式與靜態資料成員一樣,且靜態成員函式不具有this指標,他無法訪問非靜態資料成員,也無法訪問非靜態成員函式,只能訪問其他的靜態成員函式和靜態資料成員;非靜態成員函式可以訪問靜態成員函式和靜態資料成員。