指针和句柄的区别和联系理解

区别:

         句柄是一个32bit的无符号整数,实际上是windows在内存中维护的一个对象,是内存物理地址列表的索引。因为windows内存管理经常会将当前空闲对象的内存释放掉,当需要访问时再重新加载到物理内存,所以对象的物理地址是变化的,不允许直接通过物理地址来访问对象。程序将想访问的对象的句柄传递给系统,系统就可以根据句柄检索自己维护的对象列表就能知道程序想访问的对象及其物理地址。(因为windows是以虚拟内存为基础的操作系统,windows内存管理器经常在内存中来回移动对象,以满足各种应用程序的需要,对象被移动即意味着物理地址是变的)

联系:

      其实句柄和指针是两个截然不同的概念。如果说是有联系的话,就只能说:句柄可以理解为指向指针的指针(地址的索引)。在32bit机上,都是一个32位的整数。

     句柄和指针是两个完全不同的概念。windows系统利用句柄标记系统资源,隐藏系统信息。只要获得某个句柄,然后去调用就可以了。指针标记某个物理内存地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值