我正在构建一个简单的形状设计器,它很简单 - 向一个区域添加形状,你可以通过拖放来调整它们并移动它们 - 想想VS中的表单设计器。
目前我有一个Shape的基类,它代表了常见的属性(Location,Size)和方法。表示设计器上的对象的其他类继承自Shape,例如圆形,正方形等。我将对象存储在通用列表中,例如List<Shape>
我的问题是关于列表与其他通用数据结构,以及何时使用它们。
编辑:感谢Mathias指出我的真实含义。
干杯
答案 0 :(得分:2)
我的问题是:存储形状的最佳方法是什么?如果不是为什么不呢?
这取决于。其中一个主要问题应该是如何使用形状列表。访问,插入和删除的速度将根据您使用的集合类型而变化。
例如:
List<T>
是合适的。LinkedList<T>
或类似结构可能是有益的。这提供了快速枚举,但比List<T>
快速插入或删除(特别是如果您从列表中间删除)。