C C 關鍵字 static 和 const

2021-08-20 22:10:28 字數 1851 閱讀 8009

參考:

1. 靜態全域性變數和函式

//靜態全域性變數

static a;

//靜態函式

static void myfunc()

2. 靜態區域性變數

//靜態區域性變數

//每次呼叫該函式a都會加1,不會被重新初始化為0。

void myfunc()

3. 靜態類成員變數和函式

//類

class myclass

;//定義並初始化靜態成員變數

int myclass::a=0;

//定義靜態成員函式時不用加static

void myclass::myfunc()

參考:

1. const變數

//宣告並初始化

const int a=20;

2. const 指標

//指標指向的內容不能變

const int * a;

int const *a

//指標位址不能變

int * const a

//指標指向的內容和指標位址都不能變

const int * const a;

3. const修飾函式引數

// const變數作為函式引數

void myfunc( const int a )

// const指標作為函式引數

void myfunc( const int *a )

4. const 修飾返回值

// 返回 const 引用的函式

const int& myfunc(int a)

int main( int argc, char *argv)

4. const物件

//例項化const物件

const myclass object;

5. const成員變數和成員函式

class myclass

; ~myclass();

const int c; //const成員變數

static const int sc; //static const 成員變數

int not_m; // 不帶 mutable 修飾的成員變數

mutable int m; // 帶 mutable 修飾的成員變數

void myfunc(int a); // 非 const 成員函式

void myfunc_const(int a) const; // const 成員函式

};const int myclass::sc = 1; // 靜態常量成員需要在類外進行單獨定義和初始化

myclass::myclass(): c(10){} // const 成員變數在建構函式初始化列表中初始化

void myclass::myfunc(int a)

void myclass::myfunc_const(int a) const

C C 的static關鍵字

static主要有三個作用 1 區域性靜態變數 2 外部靜態變數 函式 3 靜態資料成員 成員函式 前兩種c和c 都有,第三種僅在c 中有,下面分別作以下介紹 一 區域性靜態變數 在c c 中,區域性變數按照儲存形式可分為三種auto,static,register。其中register不常用到,下...

static關鍵字和final關鍵字

static記住幾點 1.優先順序高,載入優先物件例項化 2.在記憶體中只分配一次 3.屬於類本身,所有例項共享,一處變,處處變 4.1 static不能訪問沒有static修飾的方法 因為不認識,物件例項後才能在外部使用方法 2 可以訪問static塊 3 未加static的方法可以訪問stati...

final關鍵字 和 static關鍵字

一.final關鍵字的作用 1.使用 final 方法的原因 第乙個原因是把方法鎖定,以防任何繼承類修改它的含義 第二個原因是final修飾的方法效率快。2.final final用於修飾類 成員變數和成員方法。final修飾類,類不能被繼承 final修飾成員方法,方法不能被重寫,但是子類可以用父...