類成員變量和成員函數的地址

class 指向成員函數的指針必須與向其賦值的函數類型匹配不是兩個而是三個方面都要匹配ios

  1. 參數的類型和個數
  2. 返回類型
  3. 它所屬的類類型

作下面的一個測試ide

函數

注意在獲取類成員函數的時候,若是直接把指針輸出來,獲得的是1,我想是由於編譯器把&A::fun1當作bool變量測試

void (A::*ptr)();spa

ptr=A::fun1;或者ptr=&A::fun1均可以指針

 

另外須要注意的是code

指向數據成員的指針賦予的是一個目前還不存在的一個類成員的地址,而這個地址只有在使用實際類對象進行調用時纔會真正的肯定下來
就是說在類尚未對象時候,成員變量時沒有空間的對象

 

運行結果編譯器

相關文章
相關標籤/搜索