Добрый день!
У меня возник вопрос по поводу получения указателя на функцию класса. Имеется следующий код.
struct CClass
{
LRESULT CALLBACK SendEditWndProc(HWND,UINT,WPARAM,LPARAM) {return 0;}
};
...
int main()
{
CClass cl;
...
LONG (__stdcall CChatDlg::*pCM)(HWND,UINT,WPARAM,LPARAM) = &CClass::SendEditWndProc;
LONG p_fn = (???)(cl.*pCM); // т.е. хочется, чтобы в p_fn лежал адрес функции в экземпляре cl
...
}
Возможно ли вообще сделать так?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Здравствуйте, Pavel Kokorin, Вы писали:
PK>У меня возник вопрос по поводу получения указателя на функцию класса.
Этот вопрос постоянно возникает — особенно по поводу
WindowProc. Ну и других
callback-функций тоже.
Поиск по сайту тебе очень сильно поможет.
... << RSDN@Home 1.2.0 alpha rev. 655>>
Здравствуйте, Pavel Kokorin, Вы писали:
PK> т.е. хочется, чтобы в p_fn лежал адрес функции в экземпляре cl
У экземпляров объектов нет своих копий функций-членов, функция-член одна на класс, а не на объект.