社区
C语言
帖子详情
什么是句柄???
to2008
2001-05-11 10:08:00
也许我看书太不认真,我找不到C++对于句柄的定义。
请告诉我“句柄”的精确定义,并告之出自哪本书,第几页。
多谢!
...全文
401
6
打赏
收藏
什么是句柄???
也许我看书太不认真,我找不到C++对于句柄的定义。 请告诉我“句柄”的精确定义,并告之出自哪本书,第几页。 多谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
holyfire
2001-05-11
打赏
举报
回复
就是一个标识号,如何实现不需要关心,接口会根据句柄来区分不同的同类对象(广义)就是了。
jxuer
2001-05-11
打赏
举报
回复
think in c++(P52)是这样说的,句柄是一个指向一个结构的指针,
而这个结构的定义隐藏在实现文件中
hello_wyq
2001-05-11
打赏
举报
回复
句柄就是这样的---》!
BenHubert
2001-05-11
打赏
举报
回复
我的理解,
说白了就是一个整型数,这个整型数和某一个对象相对应,
就好像学生的学号 和 学生相对应一样,
qqchen79
2001-05-11
打赏
举报
回复
我以前发的关于Windows中Handle的文章,差不多啦!
_______________________________________________________________________________
从用户(操作系统调用的用户,程序员)的角度来看,最好的理解是对进程中打开/使用的系统对象(如:文件)的索引,也就是说,
通过Handle,可以找到打开/使用的系统对象的一些状态信息(如:文件的访问权限等)。对程序员来说,知道handle域进程打开对象
的一一对应关系就足够了。
当然,这只是一种理解,任何将Handle做为指针或索引的程序访问方法都是不可取的(事实上,由于handle指向/索引的内存存
在于系统空间内,这种访问方法也没有任何可行性)。Handle本身隐藏了系统的内部实现,也就是说,M$可以选择使用指针或索引来实现
Windows系统的handle,而且这种改变将不会对应用程序造成任何影响。可以想象以下C语言中的文件使用:我们通常定义了一个FILE结构
的指针,然后使用一组函数操作它(fread/fopen/fwrite),但我们极少(或者说不建议)直接访问FILE结构的成员,这样,即使C语言
的实现中改变了FILE结构,也不会影响到我们的程序,Handle也是同样道理。
事实上,MS也确实在不同的Window中使用了不同的Handle类型,甚至不同的对象索引表的数据结构。WindowsNT4.0中,打开对象连续存
放在一张表中(结构数组),Handle是进程打开对象在这张表中相对表首的偏移量(即非指针叶非索引);而在Windows2K中,对象表采
用了三重索引结构,Handle则更接近于对象的索引(这种转化要一些简单的计算)。
Handle和对象表是一个进程的私有财产(包括所谓进程Handle),当子进程创建时,系统会把设有继承属性的Handle复制道子进程的对
象表中。所以,在进程之间简单的传递Handle的值是完全没有意义的。而进程号则是系统为一个进程指定的唯一识别号,不要搞混了。
另外,“Windows”的内存可以东则完全是陈年旧事,在Windows95/98/NT中,每个进程有独立的进程空间,进程之间不会出现任何地址冲突,
还有移动内存的必要吗?至少从进程对内存的实用上来说,可以认为内存是静态的。
Cowboy22
2001-05-11
打赏
举报
回复
搜一下"句柄"你会得到一箩筐,其中不乏精彩比喻
Spy++源码VB版
用API函数,就会提到
句柄
,像SendMessage, GetWindowText等,最常用到的参数就是
句柄
。啥是
句柄
呢?就是窗口的锅把儿,你拎着它,整个锅儿都听你的话。那啥是窗口呢?不仅仅指我们常说的窗体Form,还包括所有控件,如文本框,按钮,复选框等等。这些
句柄
怎么获取呢?用Spy++呀。
什么是
句柄
?为什么会有
句柄
?HANDLE
什么是
句柄
?为什么会有
句柄
?HANDLE 什么是
句柄
?为什么会有
句柄
?HANDLE 今天学习Android,看到一个unix函数不明白,但返回值是handle,查了查意思,是
句柄
的意思,那什么是
句柄
呢,从网上搜了一些答案,觉得这篇文章比较好,个人认为比wiki的都要讲的好。简而言之,
句柄
是一种抽象的思想: 隐藏了内核实现的细节 同时为调用提供了方便 保证了内核的安全 从广义...
mysql
句柄
是什么_什么是
句柄
?为什么会有
句柄
?HANDLE
什么是
句柄
?为什么会有
句柄
?HANDLE今天学习Android,看到一个unix函数不明白,但返回值是handle,查了查意思,是
句柄
的意思,那什么是
句柄
呢,从网上搜了一些答案,觉得这篇文章比较好,个人认为比wiki的都要讲的好。简而言之,
句柄
是一种抽象的思想:隐藏了内核实现的细节同时为调用提供了方便保证了内核的安全从广义上,能够从一个数值拎起一大堆数据的东西都可以叫做
句柄
。
句柄
的英文是"Hand...
句柄
详解,什么是
句柄
?
句柄
有什么用?
最近在做项目时遇到了
句柄
的概念,之前只知道在编译原理里有
句柄
的概念,在实际的编程时会经常用到
句柄
。 参考地址:https://www.cnblogs.com/zpcdbky/p/4652151.html 这里需要说明: 1.这里将
句柄
所能标识的所有东西(如窗口、文件、画笔等)统称为“对象”。 2.图中一个小横框表示一定大小的内存区域,并不代表一个字节,如标有0X00000AC6的横框表示4...
什么是
句柄
?指针和
句柄
的区别
句柄
在windows编程中是一个很重要的概念,在许多地方都扮演着重要的角色。在windows环境中,
句柄
是用来标识项目的,这些项目包括: (1)模块(module) (2)任务(task) (3)实例(instance) (4)文件(file) (5)内存块(block of memory) (6)菜单(menu) (7)控制(control) (8)字体(font) (9)资源
C语言
70,022
社区成员
243,263
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章