比如文件,同时能打开的文件数量是有限制的,每个文件有一个特殊结构记录被打开的文件信息,你打开文件后,得到的是一个记录该文件信息结构的元素编号(句柄),就好象数组下标一样,然后你读、写文件时还需要提供这个句柄,句柄在你关闭文件后失效。
自定义的句柄:举例来说,你开了结构数组存放自定义设备信息,在程序中只需要提供访问这个数组的下标,你维护这些设备的程序就会根据这个下标到数组中取得该设备的信息进行相应处理。
句柄的特点:一般都是无符号整数;数量一定是有限的;在使用设备时必须提供对应的句柄;句柄在使用前需要向操作系统申请、在使用后要释放。
句柄(Handle)就是对象生成前系统分配的一个ID。既然是系统分配的ID,那肯定每个都不同。可以这样理解,国家(理解为系统),国家给每一个人都分配了一个身份证(理解为Handle),有了身份证,你能办理银行业务,你能签证,你能移民,你能享有中国公民因该有的服务。但是你没有,你就是黑户,什么都不能做。
你创建一个Windowns窗体应用程序,运行后,你的窗体上所有的控件本身窗体都拥有了一个ID,你可以拿着这个ID得到该控件或窗体所有能得到的服务,在计算机中系统提供的服务就是API(应用程序接口)调用,你有了Handle,就可以理直气壮地向系统提出调用API的服务。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)