hdc和hDC区别?

mei1977mei 2009-05-22 06:41:53
一个很简单的win32程序!
在写WM_LBUTTONDOWN消息的时候我定义了DC的句柄:HDC hdc;没有任何问题,程序正常运行!
可是我在写WM_PAINT消息 定义一个DC句柄(HDC hdc)的时候,VC报错!然后我将这个定义改为HDC hDC后,程序正常运行!?
这是为什么?
HDC hdc 和HDC hDC两者之间的区别在哪?
...全文
3735 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
TianChong 2009-05-22
  • 打赏
  • 举报
回复
这些命名问题一定要注意,因为名字太相近会造成极难发现的问题,这可以编程大忌,希望不同场合下的变量要使用更有针对性的命名。上面的二个句柄,如果真的都是楼主所需要的,就要小心区分了。最好的方法当然是重新给其中一个改名。如hdc_tmp或hdc_client等。
mei1977mei 2009-05-22
  • 打赏
  • 举报
回复
忘记了把错误信息拷贝下来!

我装的是汉化版的VC,可能是这个原因,同样的问题,昨天运行报错的程序,今天居然能够运行了!没有任何的错误提示!

不管怎么样,还是要谢谢大家的回答!
Lin 2009-05-22
  • 打赏
  • 举报
回复
没区别。
有一点需要注意,一般处理WM_PAINT时用BeginPaint,EndPaint函数对,而不是GetDC,ReleaseDC函数对
GustFox 2009-05-22
  • 打赏
  • 举报
回复
HDC hdc 和HDC hDC 变量的名字不同而已,都是DC句柄
biweilun 2009-05-22
  • 打赏
  • 举报
回复
呵呵,没区别。就人为的问题。你定义的hdc大概和函数参数不符合吧
luckyboy101 2009-05-22
  • 打赏
  • 举报
回复
hdc和hDC 没有区别都是变量,只要不重命名就ok了
光宇广贞 2009-05-22
  • 打赏
  • 举报
回复
没有什么区别。

你很可能犯的是重定义的错误,

就是在第一个hdc的作用域内,你再一次使用HDC hdc重新声明了这个变量。这才是问题。

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧