Static關鍵字的作用是什麼?

2021-10-14 18:41:58 字數 1000 閱讀 9905

1、c語言中的作用

(1)隱藏:乙個被宣告為靜態的變數和函式可以被檔案內所有函式訪問,但不能被檔案外其他函式訪問,即使該變數作了extern宣告;(2)static區域性變數只初始化一次,在重複呼叫函式數,使用的是static區域性變數下一次結果的值;也就是static所在語句只執行一次,之後遇到這條語句就直接跳過了(3)儲存在靜態儲存區,預設初始化為0,這是與堆疊區變數的重大區別;(4)static全域性變數只初始化一次,防止在其他檔案單元中被引用;(5)static函式在記憶體中只有乙份,普通函式在每個被呼叫中維持乙份拷貝.

2、c++中的作用靜態資料成員:(1)靜態資料成員可以實現多個物件之間的資料共享,它是類的所有物件的共享成員,它在記憶體中只佔乙份空間,如果改變它的值,則各物件中這個資料成員的值都被改變。(2)靜態資料成員是在程式開始執行時被分配空間,到程式結束之後才釋放,只要類中指定了靜態資料成員,即使不定義物件,也會為靜態資料成員分配空間。(3)靜態資料成員可以被初始化,但是只能在類體外進行初始化,若為對靜態資料成員賦初值,則編譯器會自動為其初始化為0(4)靜態資料成員既可以通過物件名引用,也可以通過類名引用。

靜態成員函式:(1)靜態成員函式和靜態資料成員一樣,他們都屬於類的靜態成員,而不是物件成員。(2)非靜態成員函式有this指標,而靜態成員函式沒有this指標。(3)靜態成員函式主要用來方位靜態資料成員而不能訪問非靜態成員。指標和引用的區別(1)引用在建立時需要初始化,指標不必;(2)引用在初始化後不能被修改為另乙個物件的引用,指標可以;(3)引用不能使用指向空值的引用(注:不能有引用的值為null),必須總是指向某個物件,指標可以;(4)引用不需要測試合法性,指標需要。(5)指標是乙個實體,需要分配記憶體空間。引用只是變數的別名,不需要分配記憶體空間。(6)有多級指標,但是沒有多級引用,只能有一級引用。(7)指標和引用的自增運算結果不一樣。(指標是指向下乙個空間,引用時引用的變數值加1)(8)sizeof引用所得到的是所指向的變數(物件)的大小,而sizeof指標得到的是指標本身的大小。(9)引用訪問乙個變數是直接訪問,而指標訪問乙個變數是間接訪問(10)可以有const指標,但是沒有const引用;

關鍵字 static 的作用是什麼?

關鍵字 static 的作用是什麼?1 在函式體,乙個被宣告為靜態的變數在這一函式被呼叫過程中維持其值不變。2 在模組內 但在函式體外 乙個被宣告為靜態的變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問。它是乙個本地的全域性變數。3 在模組內,乙個被宣告為靜態的函式只可被這一模組內的其它函式...

關鍵字static的作用是什麼

對於這個static的作用,文字表述有三項 1 在函式體,乙個被宣告為靜態的變數在這一函式被呼叫過程中維持其值不變。2 在模組內 但在函式體外 乙個被宣告為靜態的變數可以被模組內所用函式訪問,但不能被模組外其它函式訪問。它是乙個本地的全域性變數。3 在模組內,乙個被宣告為靜態的函式只可被這一模組內的...

static關鍵字的作用是什麼?

static的作用 常用來修飾變數。全域性變數被static修飾後,就稱之為靜態全域性變數 區域性變數被static修飾後,就稱之為靜態區域性變數。統稱為靜態變數。如果需要進一步解釋下面的現象,可以了解ios的記憶體管理方面的知識,比如區域性變數是放置在棧區,而全域性變數和靜態變數是放置在靜態區的。...