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