为什么只有静态成员函数才能作为回调函数?

隐藏的this指针 对于非静态成员函数来说,它携带了一个隐藏的”this”指针,这导致它不能满足Win32回调函数签名的要求,这样的结果就是:一个非静态成员函数,不能作为一个合法的Win32回调函数。 幸运的是,几乎所有的回调函数都提供了一些方法来感知调用上下文。你可以将这个”this”指针作为一个上下文环境来重构代码,下面是一个例子:   有一些回调函数签名将它的第一个参数作为指示上下文的参数(
相关文章
相关标签/搜索