关于cbClsExtra和cbWndExtra的疑惑
c语言,windows。
面向过程,面向对象?
RegisterClass这样一个暧昧的名字,无疑使我偏向于面向对象,论点有了,论据呢?
class CFrame : public WNDCLASSEX
{
CFrame();
~CFrame();
HANDLE hEvent;
SOCKET uPeople;
};
CFrame::CFrame()
{
cbSize = sizeof(WNDCLASSEX);
style = CS_DBLCLKS|CS_HREDRAW|CS_VREDRAW;
lpfnWndProc = DefWindowProc;
cbClsExtra = sizeof(CFrame) - cbSize;
cbWndExtra = 0;
hInstance = GetModuleHandle(NULL);
hIcon = LoadIcon(NULL,IDI_APPLICATION);
hCursor = LoadCursor(NULL,IDC_ARROW);
hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
lpszMenuName = NULL;
lpszClassName = TEXT("WHAT");
hIconSm = LoadIcon(NULL,IDI_EXCLAMATION);
if (!RegisterClassEx(this)) throw GetLastError();
}
CFrame::~CFrame()
{
if (!UnregisterClass(lpszClassName,hInstance)) throw GetLastError();
}