你将如何在 Delphi 中创建一个向量类?我更愿意将所有与数学相关的东西放入一个 DLL 中。我应该使用记录还是实现接口的类?
记录方法的优点:
- 快速轻便
- 值类型
- 运算符重载
记录方法的缺点:
- 实现不能隐藏在 DLL 中(没有继承,因此 DLL 接口没有抽象基类)
- 记录作为类属性的问题 (
Class.VectorProp.X := 42
)
你怎么看?
你将如何在 Delphi 中创建一个向量类?我更愿意将所有与数学相关的东西放入一个 DLL 中。我应该使用记录还是实现接口的类?
记录方法的优点:
记录方法的缺点:
Class.VectorProp.X := 42
)你怎么看?
这取决于您的优先事项。
如果性能是重中之重,那就去记录。但是如果实现隐藏是最重要的,那就去接口吧。
但是为什么不使用包,以便您可以根据需要使用静态和动态链接。当然,如果代码要被其他语言使用,DLL 是首选,DLL 是更好的方法。
归根结底,需求及其相对优先级决定了实施。
我没有使用过这两种方法,但它们可以为您节省一些时间。