c 對c的加強(六) 成員函式 屬性

2021-10-05 17:20:14 字數 1472 閱讀 1266

//在類中生成函式呼叫函式即可

void

setnum

(int num)

intgetnum()

static修飾類的成員

使用示例:(count為static修飾的類成員)

a a;

cout <<

sizeof

(a)<< endl;

a.index =10;

a.num =11;

a.count =15;

a::count =14;

//不用去先例項物件在訪問

count << a::count << endl;

static修飾類的成員函式

使用示例:

①正確:index為靜態成員變數,編譯通過。

static

void

func()

②錯誤:m_num為非靜態成員變數,下方**塊報錯。

static

void

func()

③main中呼叫方式,直接訪問。

c/c++中static關鍵字的作用

什麼樣的情況下需要用static修飾乙個類的成員或者成員函式?

(1)類的成員需要被多個物件共享時,使用static修飾。

(2)c/c++混合程式設計時,c的介面需要乙個函式位址作為引數時,只能將類的非靜態成員函式改為靜態成員函式。作用

const物件

mutable關鍵字

用mutable修飾的資料成員時,即使在const物件或在const成員函式中,該資料成員都可以被修改。

c/c++ const關鍵字作用總結:

注:僅對資料成員進行獲取操作(如下圖)時,新增const可提高**的使用安全性。

指向類資料成員(屬性)的指標

指向類成員函式的指標

總結:

使用示例:(類中有static int num變數/int num2變數/void func()函式)

test t;

int*temp =

&(t.num)

;int test::

*p =

&test::num;

//偏移量

int test::

*p2 =

&test::num2;

void

(test::

*p_func)()

=&test::func;

c 學習六(靜態成員和友員函式)

靜態資料成員 在類裡面宣告為static靜態資料成員,但是要在類外面定義和初始化靜態資料成員。因為這個靜態資料成員是屬於類的,我們想要在所以的物件定義之前就初始化這個靜態資料成員。靜態函式 也是在類裡面在函式名前面新增static,在靜態函式中不能訪問非靜態變數。所以靜態函式中只能訪問靜態資料成員。...

C 友元一 成員函式 非成員函式和友元函式

類有成員變數和成員函式。而函式中,不是任何乙個類的成員的函式,就是非成員函式。例如 class a 這個就是成員函式。void f2 這個也是成員函式宣告,其實現在類的外部。void a f2 這個是成員函式的實現。void f3 這個就是非成員函式,它不屬於a,也不屬於任何一起其他的類。成員函式和...

Thinkcpp 學習筆記 c11 成員函式指標

指向函式的指標定義 int fp float fp 的圓括號使得編譯器正確判斷定義,沒有圓括號,這個表示式就是乙個返回 int 的函式 int fp float 同樣,成員函式指標也需要圓括號 class simpe int fp float const int fp2 float const f ...