句柄与指针的关系
来源:互联网 发布:天刀网络异常断开连接 编辑:程序博客网 时间:2024/04/29 10:45
今日看了下MFC的原码,写一点心得。
以HWND和CWnd*的说明为例:
CWnd类中有static函数CWnd* FromHandle(HWND)
它的实现是通过pState = AfxGetModuleThreadState();
而在pState 中存储有一些CHandleMap*(是一个字典指针)
所以每次在字典中查询HWND来获得CWnd*指针。
当然,每次产生CWnd对象时,都会调用Attach()-----它是往字典中假如CWnd*与HWND对
上边是MFC实现的句柄字典,其他句柄也是类似,只是系统对象句柄在系统中本身都有一个句柄表,它不是MFC实现的,而是系统产生的,通过这张表以便能访问相应的对象,例如:文件句柄、互斥句柄、进程和线程句柄等等。
以HWND和CWnd*的说明为例:
CWnd类中有static函数CWnd* FromHandle(HWND)
它的实现是通过pState = AfxGetModuleThreadState();
而在pState 中存储有一些CHandleMap*(是一个字典指针)
所以每次在字典中查询HWND来获得CWnd*指针。
当然,每次产生CWnd对象时,都会调用Attach()-----它是往字典中假如CWnd*与HWND对
上边是MFC实现的句柄字典,其他句柄也是类似,只是系统对象句柄在系统中本身都有一个句柄表,它不是MFC实现的,而是系统产生的,通过这张表以便能访问相应的对象,例如:文件句柄、互斥句柄、进程和线程句柄等等。
- 句柄与指针的关系
- MFC-窗口类的指针与句柄的关系
- MFC中,句柄和指针的关系
- 句柄与指针的区别
- 句柄与指针的区别
- 指针与句柄的区别
- 句柄与指针的不同
- 句柄与指针的区别
- 句柄与指针的区别
- 句柄与指针的区别
- 指针与句柄的区别
- 指针与句柄的区别
- 句柄与指针的区别
- 句柄与指针的区别
- 句柄与指针的区别
- 指针与句柄的区别
- 句柄与指针的联系与区别
- 句柄与指针的区别与联系
- SQL语句导入导出大全(MS SQL Server)
- BSD Socket 简易入门手册 (http://www.fanqiang.com)
- 路由器的工作原理
- 成功激励格言精选汇编
- linux kernel 2.4.5 ipv4 socket层的一点解释 (http://www.fanqiang.com)
- 句柄与指针的关系
- 用mysql存储图片及其显示
- 中国人的思维之弱
- Proxy源代码分析--谈谈如何学习linux网络编程 (http://www.fanqiang.com)
- 用 .NET 开发的轻量级 UI 测试自动化
- 海量数据库的查询优化及分页算法方案
- 61条面向对象设计的经验原则-《OOD启示录》Arthur J.Riel
- 优秀手机开发资源推荐
- 怎样成为优秀的软件模型设计者[转载]