• 句柄handle c++


      1、句柄是什么?

      在windows中,句柄是和对象一一对应的32为无符号整数值。对象可以映射到唯一的句柄,句柄也可以以映射到唯一的对象。

      2、为什么我们现在需要句柄?

      windows需要向程序员提供必要的编程接口,在这些编程接口中,允许程序员访问、创建和销毁对象。但是,出于封装性考虑,windows并不想向coder返回指针。指针包含了太多的信息。首相,指针给出了对象存储的exact adds;其次,要操作一个指针,coder必须知道指针所指对象的内部结构特征,that's to say,windows必须向程序员暴露相应的数据结构,而这些数据结构也许是操作系统对coder隐藏的。

      如果说COM技术向coder隐藏了数据,只暴露了接口并只允许按接口定义的方法操作数据的话,handle这种方式则允许你按自己的方式直接操作数据,but,windows有不向你直接暴露数据结构。直接操作数据是程序猿需要的,不暴露数据是windows所需要的。

      句柄封装方式实现了各自所需。

      3、句柄如何与对象映射?

      封装别后,必须有一个地方可以实现解码,以实现句柄和对象的相互转换。在windows中,存在两种映射方式:

      a/ 全等映射  句柄本身就是一个pointer,映射在这里只是 类型转换。进程实例句柄、模块句柄、资源句柄

      b/ 基于表哥的映射 这是对象pointer与句柄之间 the most normal映射机制。操作系统创建表格,并保存所有要考虑的对象。需要穿件新对象是,要先在表格中找到空入口,然后把表示对象的数据填入其中。当对象被删除是,他的数据成员和其在表中的入口被释放。

      4、

    不要说话
  • 相关阅读:
    TS
    多点触摸的操作与图片放大缩小
    动画 -- 按钮 -- 左右晃动
    动画 -- 按钮 --- 从无到有(中心)
    动画 -- 点击按钮 -- 向右下方移动
    动画 -- 点击按钮 -- 顺时针旋转一圈
    动画 -- 点击按钮
    动画 -- ListView列表item逐个出来(从无到有)
    动画 --- 添加 和 移除 按钮
    动画-- 按钮按序列(从小到大)显示
  • 原文地址:https://www.cnblogs.com/sxudk/p/3793451.html
Copyright © 2020-2023  润新知