爲什麼只有靜態成員函數才能作爲回調函數?

隱藏的this指針 對於非靜態成員函數來說,它攜帶了一個隱藏的」this」指針,這導致它不能滿足Win32回調函數簽名的要求,這樣的結果就是:一個非靜態成員函數,不能作爲一個合法的Win32回調函數。 幸運的是,幾乎所有的回調函數都提供了一些方法來感知調用上下文。你可以將這個」this」指針作爲一個上下文環境來重構代碼,下面是一個例子:   有一些回調函數簽名將它的第一個參數作爲指示上下文的參數(
相關文章
相關標籤/搜索