HDC赋值有关问题

HDC赋值问题
HDC   hdc=GetDC(hwnd);
我一用上面这一句编译器就报错,把它改了:
HDC   hdc;
hdc=GetDC(hwnd);
就好了
为什么不能直接赋值?

------解决方案--------------------
default:
DefWindowProc(hwnd,uMsg,wParam,lParam);
加上return就可以了
------解决方案--------------------
我估计楼主是在VC6.0下编译的,我在VC6.0下的switch语句内初始化任何定义的变量都是报错,但在BCB6.0下却可以,估计是编译器的特性吧
------解决方案--------------------
不能在CASE里面定义