摘要:
实现 TMyList.Add 函数. TList 中的 Add 函数用到了一个 Grow 方法, 它的原理是元素越多就为以后准备更多内存, 我们这里省略为预留 4 个元素的内存; TList 中的 Add 函数还同时触动了一个 Notify 方法, 这应该是为它们的子类准备的(估计是用它来激发一个事件的), 也不要了. function TMyList.Add(Item: Pointer): ... 阅读全文
posted @ 2008-03-28 15:54
万一
阅读(3754)
评论(14)
推荐(0)
摘要:
先来实现 TMyList.SetCapacity. 马上会想到下面代码: procedure TMyList.SetCapacity(const Value: Integer); begin if FCapacity Value then FCapacity := Value; end; 但这样是远远不够的, 关键是需要分配内存, 像这样: ReallocMem(数组的起点... 阅读全文
posted @ 2008-03-28 14:06
万一
阅读(3474)
评论(6)
推荐(1)
摘要:
现在准备一步步地模拟 TList 类, 建立一个自己的 TMyList. 首先, 这个类中应该包括前面提到的那个 Pointer 数组(TPointerList)的指针(PPointerList): TMyList = class(TObject) FList: PPointerList; end; 既然是一个列表, 应该有 Count 字段: TMyList = class(TO... 阅读全文
posted @ 2008-03-28 11:09
万一
阅读(4420)
评论(1)
推荐(0)
浙公网安备 33010602011771号