摘要: TBits 直接继承自 TObject, 它只扩充出 2 个属性、1 个方法:简单示例:OpenBit 方法的主要用途 - 把第一个非 1 的 "位" 设置为 1:用 TBits 实现前面的例子(窗体设计与测试效果同前):Delphi 在下面单元的源码中都有 TBits 的应用:Menus、Buttons、ComCtrls、DBClient、DBTables、DBCommon、DesignEdit... 阅读全文
posted @ 2010-05-07 22:58 万一 阅读(4522) 评论(0) 推荐(0)
摘要: 集合中的每个元素其实只占一个二进制位, 不足 8 个元素的集合只需要 1 个字节.先观察集合的大小:洞察集合的二进制表示:甚至可以把集合看成一个数字:用集合的方式重新做前一次的例子(窗体设计与测试效果同前):实例观察 TFontStyles 集合:TFontStyles 集合的测试效果图:接下来学习 TBits 类; 对 "位" 的操作 TBits 应该是最直观的. 阅读全文
posted @ 2010-05-07 22:57 万一 阅读(2943) 评论(0) 推荐(0)
摘要: 本话题涉及: 1、常用二进制的位操作; 2、集合与 "位" 的关系; 3、TBits 类.这里的 "位" 是指二进制位, 譬如一个 Byte 有 8 个位、一个 Integer 有 32 个位.在 C 语言中可以定义由 "位" 字段构成的结构体, 但因效率问题好像使用也不广泛.假如要保存八种状态(True/False), 最笨的办法可以使用下面的结构体:其实用 1 个字节就可以表示 8 种状态了,... 阅读全文
posted @ 2010-05-07 22:56 万一 阅读(5330) 评论(0) 推荐(1)