[教程]使用泛型为 Delphi 提供一个位运算的模板支持

说起来,Delphi 自 2009 引和泛型已经很长时间了,而 Delphi 缺少位域也已经更久远了,早在远古之前……,扯远了:)

新版的 Delphi 提供了一个类,名字叫 TBits,好吧,顾名思意,可是为什么是类呀?这意味着我们没法像C++一样将它嵌入到结构体里,如果你能,你就上天了@

好吧,为了实现这一目的,本着为了人类和平的思想,所以提供了 TQBits 的模板封装,几句代码:

首先看声明:

接下来看实现:

最后当然是测试用例:

蛋扯完了,大家有媳妇抱媳妇,没媳妇抱大腿去吧。这个例子实际上演示的还有另一个目的,就是给大家提供下泛型使用的另一种思路,正常 Delphi 中的泛型类型支持能力实在是有限,但我们可以在实现的时候,将其类型具体化,取地址,转类型指针,然后再操作。看不懂的就算了,扯乎~~~

分享到:

评论已关闭。