风风火火的“我申请此解释为年度最火星的解释”已经结了帖,但我还想说两句。我语文学得不好,词不达意处还望见谅。我认为,有个概念必须澄清:数据的“逻辑”结构与“物理”结构。
——暂且套用互联系统模型里“层”的概念:1. 拿过来一个类(比如链表类 TXXList,数组类 TXXArray),此时,应将“链表”、
   “数组”这个概念看作“逻辑”上的,或者说是抽象的、不考虑底层实现的;2. 在设计TXXList、TXXArray 时才去考虑如果在“物理”上实现“逻辑”上的数组、
   链表。——这即数据结构的存储实现。3. 逻辑上的数组TXXArray:提供一个看起来象数组的访问接口,比如:Items[Index];
   逻辑上的链表TXXList : 提供一个看起来象链表的访问接口,比如:Insert, NextOfNode;   物理上的数组:多个元素依次排列(内存中);
   物理上的链表: 多个元素独立排列(内存中);4. 逻辑上的数组可用物理上数组或者链表实现;
   逻辑上的链表可用物理上数组或者链表实现;5. TList 类的存储结构是数组,通过“包装”完全可以当作链表来用,这是毫无疑问的。
   
   问题是“这么做了,就‘火星’了”?
   
6. 好比“逻辑上的抓耗子”,似乎应用“物理上的猫”实现,但是“物理上的狗”也可胜任。
   那么,“狗拿耗子”就“火星”了?7. 对于 TList 能不能实现双链表的问题,答案是能。
   对于好不好的问题,见人见智。(有优点,比如:不会去多次申请小块内存)8. 对于到底“火不火星”的问题,大家随意拍砖。