代码说明吧~function()
{
CDC *pDC=GetDC();
pDC->()
....
}以上是标准用法
************************************下面是我感觉应该的用法*********************function()
{
CDC cdc;
cdc.()
}原因:CDC是个类,*pDC是个指针,GetDC()返回值为HDC的句柄, 那么*pDC=GetDC()表示什么含义呢? 我觉得既然CDC是个类,那么我声明个名为cdc的对像,可以直接引用的啊。 请指点下我哪里理解错了
{
CDC *pDC=GetDC();
pDC->()
....
}以上是标准用法
************************************下面是我感觉应该的用法*********************function()
{
CDC cdc;
cdc.()
}原因:CDC是个类,*pDC是个指针,GetDC()返回值为HDC的句柄, 那么*pDC=GetDC()表示什么含义呢? 我觉得既然CDC是个类,那么我声明个名为cdc的对像,可以直接引用的啊。 请指点下我哪里理解错了
你生成一个CDC 对象 cdc , 它代表哪个窗口?用cdc进行操作是对谁操作?你创建的这个对象和任何窗口都没有关联.
CDC其实本身就是对 HDC 进行了一个封装,CDC的本质就是HDC
补充一下
如果直接用
CDC *pDC=GetDC();
那么调用的是CWnd::GetDC()
此函数的定义CDC* GetDC( );
返回值就是CDC指针