Re[8]: Есть Timer без окна?
От: akela  
Дата: 16.10.02 14:51
Оценка:
Здравствуйте Joker3D, Вы писали:

JD>Здравствуйте Constructor, Вы писали:


C>>А теперь я попрошу поподробнее

C>>1. Почему она должна быть статической?
C>>2. Зачем у нее объявили 2-й параметр UINT uMsg, // WM_TIMER message, если туда все равно передается сообщение WM_TIMER?

JD>1. потому что таймер умеет дергать только глобальную (или статическую — один хрен функцию, соответствующую описанию

JD>
JD>VOID CALLBACK TimerProc(
JD>  HWND hwnd,         // handle to window
JD>  UINT uMsg,         // WM_TIMER message
JD>  UINT_PTR idEvent,  // timer identifier
JD>  DWORD dwTime       // current system time
JD>);
JD>

JD>и он понятия не имеет о твоих классах/объектах.

Позволю себе не согласиться. Это не пропускает компилятор, так как действительно, не совпадают типы. А таймеру пофиг, какая функция, ему интересен только ее адрес. Поэтому всякими нечестными способами типа union можно добиться вызова функции-члена класса, только надо очень осторожно следить за ее аргументами.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.