как я делаю (C++):
Код:
class QWindow {
HWND fhandle;
...
static long __stdcall WndProc(HWND, UINT, WPARAM, LPARAM);
public:
static void staticInit(); // register class
static void staticUinit(); // unregister class
}
void QWindow::staticInit()
{
WNDCLASSEX wcla = {sizeof(WNDCLASSEX), WNDPROC(WndProc), ...};
RegisterClassEx(&wcla);
}
Метод, определённый как static, отличается от остальных тем, что является обычной функцией с большими правами доступа, но в отличие от friend, находится в пространстве имён класса.