程序开发中句柄是什么概念

[复制链接]
1333|13
 楼主| langgq 发表于 2019-12-16 23:18 | 显示全部楼层 |阅读模式
最近在开发中经常听同事提起句柄的设计啥的,,以前没接触过的,,只能干瞪眼的,,这跟大家一块的学习讨论下的,希望大家不灵赐教的。。
houcs 发表于 2019-12-16 23:21 | 显示全部楼层
这个概念解释的比较笼统的————所谓句柄(handle),即指针(pointer),也见有含有地址(指针)的结构体,但几乎可以确定的是,称为句柄的东东都是为访问指针(或说是地址)而建的。
 楼主| langgq 发表于 2019-12-16 23:29 | 显示全部楼层
这个是跟指针的区别的——句柄实际上是一种指向某种资源的指针,但与指针又有所不同:指针对应着一个数据在内存中的地址,得到了指针就可以自由地修改该数据。句柄就没有这个缺点,通过句柄,你只能干一些windows让你干的事情(调用一些api函数等等),没有了指针的坏处。
pangb 发表于 2019-12-16 23:31 | 显示全部楼层
句柄并不是一个真正意义上的指针。从构造上看,句柄是一个指针,尽管它没有指向用于存储某个对象的内存位置。事实上,句柄指向一个包含了对该对象进行的引用的位置。
pangb 发表于 2019-12-16 23:34 | 显示全部楼层
句柄所指的可以是一个很复杂的结构,并且很有可以是与系统有关的,比如说上面所说的线程的句柄,它指向的就是一个类或者结构。我也是一知半解的啦。。。
ousj 发表于 2019-12-16 23:37 | 显示全部楼层
其实就是一个系统分配的号码而已,api需要这个号码来区分控件
kangzj 发表于 2019-12-16 23:40 | 显示全部楼层
有些系统里面句柄是指针实现的,也就是一个指针。比如rtt里面的文件句柄。
kangzj 发表于 2019-12-16 23:45 | 显示全部楼层
有些系统里面则是一个数字代码,间接的表示一个指针。最典型的就是emwin里面的窗口、控件句柄。
hanwe 发表于 2019-12-16 23:48 | 显示全部楼层
这个关于句柄的概念的,,我也是头一次听说的哈
yufe 发表于 2019-12-16 23:51 | 显示全部楼层

其实我觉得句柄和指针一样……
zhanglli 发表于 2019-12-16 23:54 | 显示全部楼层
这个跟地址的应用相关系的
lium 发表于 2019-12-16 23:57 | 显示全部楼层
看来c语言开发中句柄的使用还是蛮重要的
xdqfc 发表于 2019-12-17 10:16 | 显示全部楼层
自我感觉还是JAVA方便些,没有这些很悬乎的东西,而且很容易上手,我手机APP编程就是用的JAVA,特别是对于TCP网络编程比这个C++方便多了。
lium 发表于 2019-12-18 19:04 | 显示全部楼层
我怎搜索了下的,,大多讲解的是windows系统开发下的应用呢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

932

主题

8762

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部